%----Output an unreadable proof
% SZS output start Proof for theBenchmark
thf(type_def_5, type, term: $tType).
thf(type_def_6, type, subst: $tType).
thf(type_def_7, type, sTfun: ($tType * $tType) > $tType).
thf(type_def_8, type, d_term: $tType).
thf(type_def_9, type, d_subst: $tType).
thf(func_def_0, type, one: term).
thf(func_def_1, type, ap: (term > term > term)).
thf(func_def_2, type, lam: (term > term)).
thf(func_def_3, type, sub: (term > subst > term)).
thf(func_def_4, type, id: subst).
thf(func_def_5, type, sh: subst).
thf(func_def_6, type, push: (term > subst > subst)).
thf(func_def_7, type, comp: (subst > subst > subst)).
thf(func_def_8, type, var: (term > $o)).
thf(func_def_9, type, pushprop_lem1v2: $o).
thf(func_def_10, type, pushprop_lem1_gthm: $o).
thf(func_def_11, type, axmap: $o).
thf(func_def_12, type, pushprop_lem0_gthm: $o).
thf(func_def_13, type, shinj: $o).
thf(func_def_14, type, hoasinduction_lem1v2: $o).
thf(func_def_15, type, hoasinduction_lem1v2_gthm: $o).
thf(func_def_16, type, hoasap: (subst > term > subst > term > term)).
thf(func_def_17, type, induction2lem: $o).
thf(func_def_18, type, hoasinduction_lem3v2_f: $o).
thf(func_def_19, type, axvarshift: $o).
thf(func_def_20, type, hoasapinj2: $o).
thf(func_def_21, type, hoasapnotvar_gthm: $o).
thf(func_def_22, type, hoasapinj1: $o).
thf(func_def_23, type, ulamvar1: $o).
thf(func_def_24, type, induction2lem_lthm: $o).
thf(func_def_25, type, hoasinduction_lem3v2_gthm: $o).
thf(func_def_26, type, apnotvar: $o).
thf(func_def_27, type, pushprop_lthm_orig: $o).
thf(func_def_28, type, hoasinduction_lem3v2_f_lthm: $o).
thf(func_def_29, type, hoasinduction_lthm: $o).
thf(func_def_30, type, hoasinduction_no_psi_cond_lthm: $o).
thf(func_def_31, type, hoaslaminj: $o).
thf(func_def_32, type, hoasinduction_lem3aaa: $o).
thf(func_def_33, type, induction2lem_gthm: $o).
thf(func_def_34, type, hoasinduction_lem3aa_lthm: $o).
thf(func_def_35, type, hoasinduction_lem3: $o).
thf(func_def_36, type, hoasinduction_lem2: $o).
thf(func_def_37, type, termmset_lthm: $o).
thf(func_def_38, type, hoasinduction_lem1: $o).
thf(func_def_39, type, hoaslamnotap_lthm: $o).
thf(func_def_40, type, pushprop_lem1v2_lthm: $o).
thf(func_def_41, type, hoasapnotvar: $o).
thf(func_def_42, type, hoasinduction_lem0: $o).
thf(func_def_43, type, hoasinduction: $o).
thf(func_def_44, type, hoasinduction_gthm: $o).
thf(func_def_45, type, axapp: $o).
thf(func_def_46, type, hoaslamnotvar_lthm: $o).
thf(func_def_47, type, pushprop_lem3v2_lthm: $o).
thf(func_def_48, type, hoasinduction_lem3b_lthm: $o).
thf(func_def_49, type, ulamvarind: $o).
thf(func_def_50, type, induction: $o).
thf(func_def_51, type, hoasinduction_lem3a_lthm: $o).
thf(func_def_52, type, termmset_gthm: $o).
thf(func_def_53, type, hoasinduction_lem3aa: $o).
thf(func_def_54, type, pushprop_lem1v2_gthm: $o).
thf(func_def_55, type, hoaslamnotap_gthm: $o).
thf(func_def_56, type, hoaslamnotvar_gthm: $o).
thf(func_def_57, type, hoasinduction_lem3b_gthm: $o).
thf(func_def_58, type, pushprop_lem2v2: $o).
thf(func_def_59, type, hoasinduction_lem3a_gthm: $o).
thf(func_def_60, type, axclos: $o).
thf(func_def_61, type, axassoc: $o).
thf(func_def_62, type, hoasinduction_lem2v2: $o).
thf(func_def_63, type, pushprop_lthm: $o).
thf(func_def_64, type, apinj2: $o).
thf(func_def_65, type, apinj1: $o).
thf(func_def_66, type, hoasapinj2_lthm: $o).
thf(func_def_67, type, hoasinduction_lem3v2a: $o).
thf(func_def_68, type, hoasapinj1_lthm: $o).
thf(func_def_69, type, hoaslaminj_lthm: $o).
thf(func_def_70, type, axvarcons: $o).
thf(func_def_71, type, hoaslam: (subst > (subst > term > term) > term)).
thf(func_def_72, type, axscons: $o).
thf(func_def_73, type, hoasinduction_lem2v2_gthm: $o).
thf(func_def_74, type, axidr: $o).
thf(func_def_75, type, pushprop_lem1: $o).
thf(func_def_76, type, laminj: $o).
thf(func_def_77, type, hoasinduction_lem3_lthm: $o).
thf(func_def_78, type, pushprop_lem0: $o).
thf(func_def_79, type, pushprop_gthm: $o).
thf(func_def_80, type, axabs: $o).
thf(func_def_81, type, hoasinduction_lem3v2a_lthm: $o).
thf(func_def_82, type, hoasinduction_lem2_lthm: $o).
thf(func_def_83, type, hoasapinj2_gthm: $o).
thf(func_def_84, type, hoasinduction_p_and_p_prime: ((subst > term > subst > $o) > (term > $o) > $o)).
thf(func_def_85, type, hoasinduction_lem1_lthm: $o).
thf(func_def_86, type, lamnotap: $o).
thf(func_def_87, type, hoasapinj1_gthm: $o).
thf(func_def_88, type, hoaslamnotvar: $o).
thf(func_def_89, type, axidl: $o).
thf(func_def_90, type, hoaslaminj_gthm: $o).
thf(func_def_91, type, induction2_lthm: $o).
thf(func_def_92, type, hoasinduction_lem0_lthm: $o).
thf(func_def_93, type, substmonoid_lthm: $o).
thf(func_def_94, type, pushprop: $o).
thf(func_def_95, type, hoasinduction_lem3_gthm: $o).
thf(func_def_96, type, hoasinduction_lem2_gthm: $o).
thf(func_def_97, type, hoasinduction_lem3b: $o).
thf(func_def_98, type, substmonoid: $o).
thf(func_def_99, type, lamnotvar: $o).
thf(func_def_100, type, hoasinduction_lem3a: $o).
thf(func_def_101, type, hoasinduction_lem1_gthm: $o).
thf(func_def_102, type, hoasinduction_no_psi_cond: $o).
thf(func_def_103, type, induction2_gthm: $o).
thf(func_def_104, type, pushprop_lem2v2_lthm: $o).
thf(func_def_105, type, hoasvar: (subst > term > subst > $o)).
thf(func_def_106, type, hoaslamnotap: $o).
thf(func_def_107, type, substmonoid_gthm: $o).
thf(func_def_108, type, ulamvarsh: $o).
thf(func_def_109, type, induction2: $o).
thf(func_def_110, type, pushprop_lem3v2: $o).
thf(func_def_111, type, pushprop_lem2v2_gthm: $o).
thf(func_def_112, type, pushprop_lem1_lthm: $o).
thf(func_def_113, type, hoasinduction_lem3v2: $o).
thf(func_def_114, type, axshiftcons: $o).
thf(func_def_115, type, termmset: $o).
thf(func_def_116, type, pushprop_lem0_lthm: $o).
thf(func_def_117, type, hoasapnotvar_lthm: $o).
thf(func_def_118, type, hoasinduction_lem3v2_lthm: $o).
thf(func_def_119, type, pushprop_p_and_p_prime: (term > subst > (term > $o) > (term > $o) > $o)).
thf(func_def_120, type, axvarid: $o).
thf(func_def_121, type, hoasinduction_lthm_3: $o).
thf(func_def_122, type, d2term: (d_term > term)).
thf(func_def_123, type, d2subst: (d_subst > subst)).
thf(func_def_124, type, d_one: d_term).
thf(func_def_125, type, d_id: d_subst).
thf(func_def_129, type, vLAM: !>[X0: $tType, X1: $tType]:((X1) > (X0 > X1))).
thf(func_def_130, type, vPI: !>[X0: $tType]:(((X0 > $o) > $o))).
thf(func_def_131, type, db2: !>[X0: $tType]:(X0)).
thf(func_def_132, type, db0: !>[X0: $tType]:(X0)).
thf(func_def_133, type, db1: !>[X0: $tType]:(X0)).
thf(func_def_134, type, vEQ: !>[X0: $tType]:((X0 > X0 > $o))).
thf(func_def_135, type, db4: !>[X0: $tType]:(X0)).
thf(func_def_136, type, db3: !>[X0: $tType]:(X0)).
thf(func_def_137, type, sP0: ((subst > term > subst > $o) > $o)).
thf(func_def_138, type, sP1: $o).
thf(func_def_139, type, sP2: $o).
thf(func_def_140, type, sP3: ((subst > term > subst > $o) > $o)).
thf(func_def_141, type, sP4: $o).
thf(func_def_142, type, sP5: $o).
thf(func_def_143, type, sP6: ((subst > term > subst > $o) > $o)).
thf(func_def_144, type, sP7: $o).
thf(func_def_145, type, sP8: $o).
thf(func_def_146, type, sP9: $o).
thf(func_def_147, type, sK10: ((term > $o) > subst > term)).
thf(func_def_148, type, sK11: ((term > $o) > term)).
thf(func_def_149, type, sK12: ((term > $o) > term)).
thf(func_def_150, type, sK13: ((term > $o) > term)).
thf(func_def_151, type, sK14: term).
thf(func_def_152, type, sK15: (term > $o)).
thf(func_def_153, type, sK16: (term > term)).
thf(func_def_154, type, sK17: subst).
thf(func_def_155, type, sK18: (term > $o)).
thf(func_def_156, type, sK19: term).
thf(func_def_157, type, sK20: (term > term)).
thf(func_def_158, type, sK21: term).
thf(func_def_159, type, sK22: ((term > $o) > term)).
thf(func_def_160, type, sK23: ((term > $o) > term)).
thf(func_def_161, type, sK24: ((term > $o) > term)).
thf(func_def_162, type, sK25: ((term > $o) > term)).
thf(func_def_163, type, sK26: ((term > $o) > term)).
thf(func_def_164, type, sK27: ((term > $o) > term)).
thf(func_def_165, type, sK28: ((term > $o) > term)).
thf(func_def_166, type, sK29: ((term > $o) > term)).
thf(func_def_167, type, sK30: (term > $o)).
thf(func_def_168, type, sK31: term).
thf(func_def_169, type, sK32: subst).
thf(func_def_170, type, sK33: (term > term)).
thf(func_def_171, type, sK34: (term > $o)).
thf(func_def_172, type, sK35: term).
thf(func_def_173, type, sK36: subst).
thf(func_def_174, type, sK37: term).
thf(func_def_175, type, sK38: subst).
thf(func_def_176, type, sK39: ((term > $o) > term)).
thf(func_def_177, type, sK40: ((term > $o) > term)).
thf(func_def_178, type, sK41: ((term > $o) > term)).
thf(func_def_179, type, sK42: (subst > (term > $o) > term)).
thf(func_def_180, type, sK43: term).
thf(func_def_181, type, sK44: subst).
thf(func_def_182, type, sK45: (subst > term > subst > $o)).
thf(func_def_183, type, sK46: term).
thf(func_def_184, type, sK47: ((subst > term > term) > term)).
thf(func_def_185, type, sK48: ((subst > term > term) > term)).
thf(func_def_186, type, sK49: ((subst > term > term) > subst)).
thf(func_def_187, type, sK50: ((subst > term > term) > subst)).
thf(func_def_188, type, sK51: ((subst > term > subst > $o) > term)).
thf(func_def_189, type, sK52: ((subst > term > subst > $o) > term)).
thf(func_def_190, type, sK53: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_191, type, sK54: ((subst > term > subst > $o) > term)).
thf(func_def_192, type, sK55: ((subst > term > subst > $o) > term)).
thf(func_def_193, type, sK56: (subst > term > subst > $o)).
thf(func_def_194, type, sK57: term).
thf(func_def_195, type, sK58: ((subst > term > term) > term)).
thf(func_def_196, type, sK59: ((subst > term > term) > subst)).
thf(func_def_197, type, sK60: ((subst > term > term) > term)).
thf(func_def_198, type, sK61: ((subst > term > term) > subst)).
thf(func_def_199, type, sK62: ((subst > term > subst > $o) > term)).
thf(func_def_200, type, sK63: ((subst > term > subst > $o) > subst)).
thf(func_def_201, type, sK64: ((subst > term > subst > $o) > subst)).
thf(func_def_202, type, sK65: ((subst > term > subst > $o) > subst)).
thf(func_def_203, type, sK66: ((subst > term > subst > $o) > subst)).
thf(func_def_204, type, sK67: ((subst > term > subst > $o) > subst)).
thf(func_def_205, type, sK68: ((subst > term > subst > $o) > term)).
thf(func_def_206, type, sK69: ((subst > term > subst > $o) > subst)).
thf(func_def_207, type, sK70: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_208, type, sK71: (term > (subst > term > subst > $o) > term)).
thf(func_def_209, type, sK72: term).
thf(func_def_210, type, sK73: (subst > term > subst > $o)).
thf(func_def_211, type, sK74: ((subst > term > term) > term)).
thf(func_def_212, type, sK75: ((subst > term > term) > subst)).
thf(func_def_213, type, sK76: ((subst > term > term) > term)).
thf(func_def_214, type, sK77: ((subst > term > term) > subst)).
thf(func_def_215, type, sK78: ((subst > term > subst > $o) > subst)).
thf(func_def_216, type, sK79: ((subst > term > subst > $o) > subst)).
thf(func_def_217, type, sK80: ((subst > term > subst > $o) > subst)).
thf(func_def_218, type, sK81: ((subst > term > subst > $o) > term)).
thf(func_def_219, type, sK82: ((subst > term > subst > $o) > subst)).
thf(func_def_220, type, sK83: ((subst > term > subst > $o) > subst)).
thf(func_def_221, type, sK84: ((subst > term > subst > $o) > subst)).
thf(func_def_222, type, sK85: ((subst > term > subst > $o) > term)).
thf(func_def_223, type, sK86: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_224, type, sK87: ((subst > term > subst > $o) > term)).
thf(func_def_225, type, sK88: ((subst > term > subst > $o) > term)).
thf(func_def_226, type, sK89: ((subst > term > subst > $o) > term)).
thf(func_def_227, type, sK90: ((subst > term > subst > $o) > subst)).
thf(func_def_228, type, sK91: ((subst > term > subst > $o) > subst)).
thf(func_def_229, type, sK92: ((subst > term > subst > $o) > subst)).
thf(func_def_230, type, sK93: ((subst > term > subst > $o) > term)).
thf(func_def_231, type, sK94: ((subst > term > subst > $o) > term)).
thf(func_def_232, type, sK95: ((subst > term > subst > $o) > subst)).
thf(func_def_233, type, sK96: ((subst > term > subst > $o) > subst)).
thf(func_def_234, type, sK97: ((subst > term > subst > $o) > subst)).
thf(func_def_235, type, sK98: (term > (subst > term > subst > $o) > term)).
thf(func_def_236, type, sK99: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_237, type, sK100: (subst > term > subst > $o)).
thf(func_def_238, type, sK101: term).
thf(func_def_239, type, sK102: ((subst > term > term) > subst)).
thf(func_def_240, type, sK103: ((subst > term > term) > subst)).
thf(func_def_241, type, sK104: ((subst > term > term) > term)).
thf(func_def_242, type, sK105: ((subst > term > term) > term)).
thf(func_def_243, type, sK106: term).
thf(func_def_244, type, sK107: (subst > term > subst > $o)).
thf(func_def_245, type, sK108: ((subst > term > term) > term)).
thf(func_def_246, type, sK109: ((subst > term > term) > subst)).
thf(func_def_247, type, sK110: ((subst > term > term) > subst)).
thf(func_def_248, type, sK111: ((subst > term > term) > term)).
thf(func_def_249, type, sK112: ((subst > term > subst > $o) > term)).
thf(func_def_250, type, sK113: ((subst > term > subst > $o) > subst)).
thf(func_def_251, type, sK114: ((subst > term > subst > $o) > subst)).
thf(func_def_252, type, sK115: ((subst > term > subst > $o) > subst)).
thf(func_def_253, type, sK116: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_254, type, sK117: ((subst > term > subst > $o) > term)).
thf(func_def_255, type, sK118: ((subst > term > subst > $o) > subst)).
thf(func_def_256, type, sK119: ((subst > term > subst > $o) > term)).
thf(func_def_257, type, sK120: ((subst > term > subst > $o) > subst)).
thf(func_def_258, type, sK121: ((subst > term > subst > $o) > subst)).
thf(func_def_259, type, sK122: ((subst > term > subst > $o) > term)).
thf(func_def_260, type, sK123: ((subst > term > subst > $o) > term)).
thf(func_def_261, type, sK124: term).
thf(func_def_262, type, sK125: (subst > term > subst > $o)).
thf(func_def_263, type, sK126: (term > $o)).
thf(func_def_264, type, sK127: ((subst > term > term) > term)).
thf(func_def_265, type, sK128: ((subst > term > term) > term)).
thf(func_def_266, type, sK129: ((subst > term > term) > subst)).
thf(func_def_267, type, sK130: ((subst > term > term) > subst)).
thf(func_def_268, type, sK131: ((term > $o) > term > term)).
thf(func_def_269, type, sK132: ((term > $o) > (subst > term > subst > $o) > term)).
thf(func_def_270, type, sK133: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_271, type, sK134: ((subst > term > subst > $o) > subst)).
thf(func_def_272, type, sK135: ((subst > term > subst > $o) > subst)).
thf(func_def_273, type, sK136: ((subst > term > subst > $o) > term)).
thf(func_def_274, type, sK137: ((subst > term > subst > $o) > subst)).
thf(func_def_275, type, sK138: ((subst > term > subst > $o) > subst)).
thf(func_def_276, type, sK139: ((subst > term > subst > $o) > subst)).
thf(func_def_277, type, sK140: ((subst > term > subst > $o) > subst)).
thf(func_def_278, type, sK141: ((subst > term > subst > $o) > term)).
thf(func_def_279, type, sK142: term).
thf(func_def_280, type, sK143: ((subst > term > term) > term)).
thf(func_def_281, type, sK144: ((subst > term > term) > subst)).
thf(func_def_282, type, sK145: ((subst > term > term) > subst)).
thf(func_def_283, type, sK146: (subst > term > term)).
thf(func_def_284, type, sK147: term).
thf(func_def_285, type, sK148: term).
thf(func_def_286, type, sK149: term).
thf(func_def_287, type, sK150: (subst > term > subst > $o)).
thf(func_def_288, type, sK151: (term > $o)).
thf(func_def_289, type, sK152: ((subst > term > term) > term)).
thf(func_def_290, type, sK153: ((subst > term > term) > subst)).
thf(func_def_291, type, sK154: ((subst > term > term) > subst)).
thf(func_def_292, type, sK155: ((subst > term > term) > term)).
thf(func_def_293, type, sK156: ((subst > term > subst > $o) > subst)).
thf(func_def_294, type, sK157: ((subst > term > subst > $o) > term)).
thf(func_def_295, type, sK158: ((subst > term > subst > $o) > subst)).
thf(func_def_296, type, sK159: ((subst > term > subst > $o) > subst)).
thf(func_def_297, type, sK160: ((term > $o) > (subst > term > subst > $o) > term)).
thf(func_def_298, type, sK161: ((subst > term > subst > $o) > subst)).
thf(func_def_299, type, sK162: ((subst > term > subst > $o) > term)).
thf(func_def_300, type, sK163: ((subst > term > subst > $o) > subst)).
thf(func_def_301, type, sK164: ((subst > term > subst > $o) > subst)).
thf(func_def_302, type, sK165: ((term > $o) > term > term)).
thf(func_def_303, type, sK166: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_304, type, sK167: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_305, type, sK168: ((subst > term > subst > $o) > term)).
thf(func_def_306, type, sK169: ((subst > term > subst > $o) > term)).
thf(func_def_307, type, sK170: term).
thf(func_def_308, type, sK171: (subst > term > subst > $o)).
thf(func_def_309, type, sK172: ((subst > term > term) > term)).
thf(func_def_310, type, sK173: ((subst > term > term) > term)).
thf(func_def_311, type, sK174: ((subst > term > term) > subst)).
thf(func_def_312, type, sK175: ((subst > term > term) > subst)).
thf(func_def_313, type, sK176: (term > $o)).
thf(func_def_314, type, sK177: (subst > term > subst > $o)).
thf(func_def_315, type, sK178: term).
thf(func_def_316, type, sK179: ((subst > term > term) > subst)).
thf(func_def_317, type, sK180: ((subst > term > term) > term)).
thf(func_def_318, type, sK181: ((subst > term > term) > subst)).
thf(func_def_319, type, sK182: ((subst > term > term) > term)).
thf(func_def_320, type, sK183: (term > subst > term > term)).
thf(func_def_321, type, sK184: (term > (term > $o) > term)).
thf(func_def_322, type, sK185: ((subst > term > subst > $o) > (term > $o) > term)).
thf(func_def_323, type, sK186: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_324, type, sK187: term).
thf(func_def_325, type, sK188: term).
thf(func_def_326, type, sK189: ((subst > term > term) > subst)).
thf(func_def_327, type, sK190: ((subst > term > term) > term)).
thf(func_def_328, type, sK191: term).
thf(func_def_329, type, sK192: (term > $o)).
thf(func_def_330, type, sK193: subst).
thf(func_def_331, type, sK194: ((term > $o) > term)).
thf(func_def_332, type, sK195: (subst > (term > $o) > term > term > $o)).
thf(func_def_333, type, sK196: subst).
thf(func_def_334, type, sK197: (term > (term > $o) > (term > $o) > subst > term)).
thf(func_def_335, type, sK198: term).
thf(func_def_336, type, sK199: subst).
thf(func_def_337, type, sK200: subst).
thf(func_def_338, type, sK201: (term > $o)).
thf(func_def_339, type, sK202: (term > $o)).
thf(func_def_340, type, sK203: term).
thf(func_def_341, type, sK204: (subst > d_subst)).
thf(func_def_342, type, sK205: term).
thf(func_def_343, type, sK206: term).
thf(func_def_344, type, sK207: term).
thf(func_def_345, type, sK208: subst).
thf(func_def_346, type, sK209: term).
thf(func_def_347, type, sK210: subst).
thf(func_def_348, type, sK211: ((subst > term > term) > subst)).
thf(func_def_349, type, sK212: ((subst > term > term) > term)).
thf(func_def_350, type, sK213: ((subst > term > term) > subst)).
thf(func_def_351, type, sK214: ((subst > term > term) > term)).
thf(func_def_352, type, sK215: ((subst > term > term) > subst)).
thf(func_def_353, type, sK216: ((subst > term > term) > subst)).
thf(func_def_354, type, sK217: subst).
thf(func_def_355, type, sK218: (subst > term > term)).
thf(func_def_356, type, sK219: term).
thf(func_def_357, type, sK220: (subst > term > term)).
thf(func_def_358, type, sK221: ((subst > term > subst > $o) > term > $o)).
thf(func_def_359, type, sK222: (subst > term > subst > $o)).
thf(func_def_360, type, sK223: ((term > $o) > term)).
thf(func_def_361, type, sK224: (term > d_term)).
thf(func_def_362, type, sK225: (term > $o)).
thf(func_def_363, type, sK226: term).
thf(func_def_364, type, sK227: subst).
thf(func_def_365, type, sK228: term).
thf(func_def_366, type, sK229: (term > $o)).
thf(func_def_367, type, sK230: subst).
thf(func_def_368, type, sK231: term).
thf(func_def_369, type, sK232: subst).
thf(func_def_370, type, sK233: term).
thf(func_def_371, type, sK234: subst).
thf(func_def_372, type, sK235: term).
thf(func_def_373, type, sK236: term).
thf(func_def_374, type, sK237: term).
thf(func_def_375, type, sK238: term).
thf(func_def_376, type, sK239: term).
thf(func_def_377, type, sK240: term).
thf(func_def_378, type, sK241: term).
thf(func_def_379, type, sK242: term).
thf(func_def_380, type, sK243: term).
thf(func_def_381, type, sK244: term).
thf(func_def_382, type, sK245: term).
thf(func_def_383, type, sK246: ((subst > term > subst > $o) > (term > $o) > term)).
thf(func_def_384, type, sK247: ((subst > term > subst > $o) > term)).
thf(func_def_385, type, sK248: ((subst > term > subst > $o) > term)).
thf(func_def_386, type, sK249: ((subst > term > subst > $o) > subst)).
thf(func_def_387, type, sK250: ((subst > term > subst > $o) > subst)).
thf(func_def_388, type, sK251: ((subst > term > subst > $o) > term)).
thf(func_def_389, type, sK252: ((subst > term > subst > $o) > subst)).
thf(func_def_390, type, sK253: ((subst > term > subst > $o) > subst)).
thf(func_def_391, type, sK254: ((subst > term > subst > $o) > subst)).
thf(func_def_392, type, sK255: ((subst > term > subst > $o) > term)).
thf(func_def_393, type, sK256: ((subst > term > subst > $o) > subst)).
thf(func_def_394, type, sK257: term).
thf(func_def_395, type, sK258: (term > $o)).
thf(func_def_396, type, sK259: (subst > term > subst > $o)).
thf(func_def_397, type, sK260: term).
thf(func_def_398, type, sK261: subst).
thf(func_def_399, type, sK262: subst).
thf(func_def_400, type, sK263: subst).
thf(func_def_401, type, sK264: subst).
thf(func_def_402, type, sK265: term).
thf(func_def_403, type, sK266: (subst > term > subst > $o)).
thf(func_def_404, type, sK267: ((subst > term > term) > term)).
thf(func_def_405, type, sK268: ((subst > term > term) > subst)).
thf(func_def_406, type, sK269: ((subst > term > term) > term)).
thf(func_def_407, type, sK270: ((subst > term > term) > subst)).
thf(func_def_408, type, sK271: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_409, type, sK272: ((subst > term > subst > $o) > term > term)).
thf(func_def_410, type, sK273: ((term > $o) > term > (term > $o) > subst > term)).
thf(func_def_411, type, sK274: subst).
thf(func_def_412, type, sK275: (term > $o)).
thf(func_def_413, type, sK276: term).
thf(func_def_414, type, sK277: (term > $o)).
thf(func_def_415, type, sK278: ((subst > term > subst > $o) > term > term)).
thf(func_def_416, type, sK279: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_417, type, sK280: term).
thf(func_def_418, type, sK281: (subst > term > subst > $o)).
thf(func_def_419, type, sK282: ((subst > term > term) > subst)).
thf(func_def_420, type, sK283: ((subst > term > term) > subst)).
thf(func_def_421, type, sK284: ((subst > term > term) > term)).
thf(func_def_422, type, sK285: ((subst > term > term) > term)).
thf(func_def_423, type, sK286: term).
thf(func_def_424, type, sK287: term).
thf(func_def_425, type, sK288: term).
thf(func_def_426, type, sK289: term).
thf(func_def_427, type, sK290: term).
thf(func_def_428, type, sK291: term).
thf(func_def_429, type, sK292: term).
thf(func_def_430, type, sK293: term).
thf(func_def_431, type, sK294: term).
thf(func_def_432, type, sK295: (subst > term > subst > $o)).
thf(func_def_433, type, sK296: (term > $o)).
thf(func_def_434, type, sK297: term).
thf(func_def_435, type, sK298: ((subst > term > term) > term)).
thf(func_def_436, type, sK299: ((subst > term > term) > subst)).
thf(func_def_437, type, sK300: ((subst > term > term) > term)).
thf(func_def_438, type, sK301: ((subst > term > term) > subst)).
thf(func_def_439, type, sK302: (term > (term > $o) > term)).
thf(func_def_440, type, sK303: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_441, type, sK304: ((term > $o) > (subst > term > subst > $o) > term)).
thf(func_def_442, type, sK305: term).
thf(func_def_443, type, sK306: (term > $o)).
thf(func_def_444, type, sK307: (term > term)).
thf(func_def_445, type, sK308: term).
thf(func_def_446, type, sK309: (term > $o)).
thf(func_def_447, type, sK310: (subst > term > subst > $o)).
thf(func_def_448, type, sK311: ((subst > term > term) > subst)).
thf(func_def_449, type, sK312: ((subst > term > term) > subst)).
thf(func_def_450, type, sK313: ((subst > term > term) > term)).
thf(func_def_451, type, sK314: ((subst > term > term) > term)).
thf(func_def_452, type, sK315: (subst > term > subst > $o)).
thf(func_def_453, type, sK316: ((term > $o) > term)).
thf(func_def_454, type, sK317: term).
thf(func_def_455, type, sK318: ((term > $o) > term)).
thf(func_def_456, type, sK319: ((term > $o) > term)).
thf(func_def_457, type, sK320: ((term > $o) > term)).
thf(func_def_458, type, sK321: ((term > $o) > term)).
thf(func_def_459, type, sK322: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_460, type, sK323: ((subst > term > subst > $o) > (term > $o) > term)).
thf(func_def_461, type, sK324: ((term > $o) > term > term)).
thf(func_def_462, type, sK325: ((subst > term > subst > $o) > term > $o)).
thf(func_def_463, type, sK326: ((subst > term > subst > $o) > term > term)).
thf(func_def_464, type, sK327: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_465, type, sK328: term).
thf(func_def_466, type, sK329: (subst > term > subst > $o)).
thf(func_def_467, type, sK330: ((subst > term > term) > term)).
thf(func_def_468, type, sK331: ((subst > term > term) > subst)).
thf(func_def_469, type, sK332: ((subst > term > term) > subst)).
thf(func_def_470, type, sK333: ((subst > term > term) > term)).
thf(func_def_471, type, sK334: subst).
thf(func_def_472, type, sK335: (term > $o)).
thf(func_def_473, type, sK336: term).
thf(func_def_474, type, sK337: (term > term)).
thf(func_def_475, type, sK338: ((term > $o) > term)).
thf(func_def_476, type, sK339: ((term > $o) > term)).
thf(func_def_477, type, sK340: ((term > $o) > term)).
thf(func_def_478, type, sK341: ((term > $o) > subst > term)).
thf(func_def_479, type, sK342: (subst > term > subst > $o)).
thf(func_def_480, type, sK343: term).
thf(func_def_481, type, sK344: ((subst > term > term) > subst)).
thf(func_def_482, type, sK345: ((subst > term > term) > subst)).
thf(func_def_483, type, sK346: ((subst > term > term) > term)).
thf(func_def_484, type, sK347: ((subst > term > term) > term)).
thf(func_def_485, type, sK348: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_486, type, sK349: ((subst > term > subst > $o) > term)).
thf(func_def_487, type, sK350: ((subst > term > subst > $o) > subst)).
thf(func_def_488, type, sK351: ((subst > term > subst > $o) > subst)).
thf(func_def_489, type, sK352: ((subst > term > subst > $o) > subst)).
thf(func_def_490, type, sK353: ((subst > term > subst > $o) > term)).
thf(func_def_491, type, sK354: ((subst > term > subst > $o) > subst)).
thf(func_def_492, type, sK355: ((subst > term > subst > $o) > subst)).
thf(func_def_493, type, sK356: ((subst > term > subst > $o) > subst)).
thf(func_def_494, type, sK357: ((subst > term > subst > $o) > term)).
thf(func_def_495, type, sK358: (term > (subst > term > subst > $o) > term)).
thf(func_def_496, type, sK359: ((subst > term > subst > $o) > subst)).
thf(func_def_497, type, sK360: ((subst > term > subst > $o) > subst)).
thf(func_def_498, type, sK361: ((subst > term > subst > $o) > term)).
thf(func_def_499, type, sK362: ((subst > term > subst > $o) > subst)).
thf(func_def_500, type, sK363: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_501, type, sK364: ((subst > term > subst > $o) > subst)).
thf(func_def_502, type, sK365: ((subst > term > subst > $o) > subst)).
thf(func_def_503, type, sK366: ((subst > term > subst > $o) > subst)).
thf(func_def_504, type, sK367: ((subst > term > subst > $o) > term)).
thf(func_def_505, type, sK368: (subst > term > subst > $o)).
thf(func_def_506, type, sK369: term).
thf(func_def_507, type, sK370: ((subst > term > term) > term)).
thf(func_def_508, type, sK371: ((subst > term > term) > subst)).
thf(func_def_509, type, sK372: ((subst > term > term) > subst)).
thf(func_def_510, type, sK373: ((subst > term > term) > term)).
thf(func_def_511, type, sK374: term).
thf(func_def_512, type, sK375: subst).
thf(func_def_513, type, sK376: (subst > term > subst > $o)).
thf(func_def_514, type, sK377: ((term > $o) > term)).
thf(func_def_515, type, sK378: ((subst > term > subst > $o) > term > $o)).
thf(func_def_516, type, sK379: (term > subst > term > term)).
thf(func_def_517, type, sK380: term).
thf(func_def_518, type, sK381: (term > $o)).
thf(func_def_519, type, sK382: term).
thf(func_def_520, type, sK383: (term > $o)).
thf(func_def_521, type, sK384: term).
thf(func_def_522, type, sK385: subst).
thf(func_def_523, type, sK386: term).
thf(func_def_524, type, sK387: term).
thf(func_def_525, type, sK388: term).
thf(func_def_526, type, sK389: term).
thf(func_def_527, type, sK390: ((term > $o) > term)).
thf(func_def_528, type, sK391: ((term > $o) > term)).
thf(func_def_529, type, sK392: ((term > $o) > term)).
thf(func_def_530, type, sK393: ((term > $o) > term)).
thf(func_def_531, type, sK394: (term > $o)).
thf(func_def_532, type, sK395: term).
thf(func_def_533, type, sK396: subst).
thf(func_def_534, type, sK397: subst).
thf(func_def_535, type, sK398: ((subst > term > term) > subst)).
thf(func_def_536, type, sK399: ((subst > term > term) > term)).
thf(func_def_537, type, sK400: ((subst > term > term) > subst)).
thf(func_def_538, type, sK401: ((subst > term > term) > subst)).
thf(func_def_539, type, sK402: ((subst > term > term) > term)).
thf(func_def_540, type, sK403: ((subst > term > term) > subst)).
thf(func_def_541, type, sK404: (subst > term > term)).
thf(func_def_542, type, sK405: (subst > term > term)).
thf(func_def_543, type, sK406: subst).
thf(func_def_544, type, sK407: term).
thf(func_def_545, type, sK408: term).
thf(func_def_546, type, sK409: term).
thf(func_def_547, type, sK410: term).
thf(func_def_548, type, sK411: ((subst > term > term) > subst)).
thf(func_def_549, type, sK412: ((subst > term > term) > term)).
thf(func_def_550, type, sK413: (term > subst > term > term)).
thf(func_def_551, type, sK414: subst).
thf(func_def_552, type, sK415: term).
thf(func_def_553, type, sK416: term).
thf(func_def_554, type, sK417: (subst > term > subst > $o)).
thf(func_def_555, type, sK418: ((subst > term > subst > $o) > term)).
thf(func_def_556, type, sK419: ((subst > term > subst > $o) > term)).
thf(func_def_557, type, sK420: ((subst > term > subst > $o) > term)).
thf(func_def_558, type, sK421: ((subst > term > subst > $o) > subst)).
thf(func_def_559, type, sK422: ((subst > term > subst > $o) > subst)).
thf(func_def_560, type, sK423: ((subst > term > subst > $o) > subst)).
thf(func_def_561, type, sK424: ((subst > term > subst > $o) > subst)).
thf(func_def_562, type, sK425: ((subst > term > subst > $o) > term)).
thf(func_def_563, type, sK426: ((subst > term > subst > $o) > subst)).
thf(func_def_564, type, sK427: ((subst > term > subst > $o) > subst)).
thf(func_def_565, type, sK428: term).
thf(func_def_566, type, sK429: (subst > term > subst > $o)).
thf(func_def_567, type, sK430: (term > (subst > term > term) > term)).
thf(func_def_568, type, sK431: (term > (subst > term > term) > subst)).
thf(func_def_569, type, sK432: (term > (subst > term > term) > subst)).
thf(func_def_570, type, sK433: ((subst > term > term) > term)).
thf(func_def_571, type, sK434: (term > (subst > term > term) > term)).
thf(func_def_572, type, sK435: (term > (subst > term > term) > subst)).
thf(func_def_573, type, sK436: (term > (subst > term > term) > subst)).
thf(func_def_574, type, sK437: ((subst > term > subst > $o) > term > term)).
thf(func_def_575, type, sK438: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_576, type, sK439: ((subst > term > subst > $o) > term)).
thf(func_def_577, type, sK440: term).
thf(func_def_578, type, sK441: term).
thf(func_def_579, type, sK442: term).
thf(func_def_580, type, sK443: (subst > term > subst > $o)).
thf(func_def_581, type, sK444: term).
thf(func_def_582, type, sK445: ((subst > term > term) > subst)).
thf(func_def_583, type, sK446: ((subst > term > term) > subst)).
thf(func_def_584, type, sK447: ((subst > term > term) > term)).
thf(func_def_585, type, sK448: ((subst > term > term) > term)).
thf(func_def_586, type, sK449: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_587, type, sK450: (term > (subst > term > subst > $o) > term)).
thf(func_def_588, type, sK451: term).
thf(func_def_589, type, sK452: (subst > term > subst > $o)).
thf(func_def_590, type, sK453: ((subst > term > term) > term)).
thf(func_def_591, type, sK454: ((subst > term > term) > subst)).
thf(func_def_592, type, sK455: ((subst > term > term) > subst)).
thf(func_def_593, type, sK456: ((subst > term > term) > term)).
thf(func_def_594, type, sK457: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_595, type, sK458: (term > (subst > term > subst > $o) > term)).
thf(func_def_596, type, sK459: ((subst > term > subst > $o) > term > term)).
thf(func_def_597, type, sK460: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_598, type, sK461: term).
thf(func_def_599, type, sK462: (subst > term > subst > $o)).
thf(func_def_600, type, sK463: term).
thf(func_def_601, type, sK464: ((subst > term > term) > term)).
thf(func_def_602, type, sK465: ((subst > term > term) > term)).
thf(func_def_603, type, sK466: ((subst > term > term) > subst)).
thf(func_def_604, type, sK467: ((subst > term > term) > subst)).
thf(func_def_605, type, sK468: subst).
thf(func_def_606, type, sK469: term).
thf(func_def_607, type, sK470: term).
thf(func_def_608, type, sK471: term).
thf(func_def_609, type, sK472: term).
thf(func_def_610, type, sK473: term).
thf(func_def_611, type, sK474: term).
thf(func_def_612, type, sK475: term).
thf(func_def_613, type, sK476: term).
thf(func_def_614, type, sK477: term).
thf(func_def_615, type, sK478: (term > (term > $o) > term)).
thf(func_def_616, type, sK479: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_617, type, sK480: ((subst > term > subst > $o) > (term > $o) > term)).
thf(func_def_618, type, sK481: ((term > $o) > term)).
thf(func_def_619, type, sK482: ((term > $o) > term)).
thf(func_def_620, type, sK483: ((term > $o) > term)).
thf(func_def_621, type, sK484: ((term > $o) > term)).
thf(func_def_622, type, sK485: ((subst > term > subst > $o) > term > $o)).
thf(func_def_623, type, sK486: (term > $o)).
thf(func_def_624, type, sK487: term).
thf(func_def_625, type, sK488: (subst > term > subst > $o)).
thf(func_def_626, type, sK489: ((subst > term > term) > term)).
thf(func_def_627, type, sK490: ((subst > term > term) > subst)).
thf(func_def_628, type, sK491: ((subst > term > term) > subst)).
thf(func_def_629, type, sK492: ((subst > term > term) > term)).
thf(func_def_630, type, sK493: term).
thf(func_def_631, type, sK494: (term > $o)).
thf(func_def_632, type, sK495: (term > term)).
thf(func_def_633, type, sK496: (subst > term > subst > $o)).
thf(func_def_634, type, sK497: ((term > $o) > term)).
thf(func_def_635, type, sK498: term).
thf(func_def_636, type, sK499: (term > subst > term > term)).
thf(func_def_637, type, sK500: term).
thf(func_def_638, type, sK501: ((subst > term > term) > term)).
thf(func_def_639, type, sK502: ((subst > term > term) > subst)).
thf(func_def_640, type, sK503: (term > (term > $o) > subst > term > $o)).
thf(func_def_641, type, sK504: subst).
thf(func_def_642, type, sK505: (term > $o)).
thf(func_def_643, type, sK506: term).
thf(func_def_644, type, sK507: ((term > $o) > term)).
thf(func_def_645, type, sK508: term).
thf(func_def_646, type, sK509: term).
thf(func_def_647, type, sK510: term).
thf(func_def_648, type, sK511: term).
thf(func_def_649, type, sK512: ((subst > term > subst > $o) > term)).
thf(func_def_650, type, sK513: ((subst > term > subst > $o) > subst)).
thf(func_def_651, type, sK514: ((subst > term > subst > $o) > subst)).
thf(func_def_652, type, sK515: ((subst > term > subst > $o) > subst)).
thf(func_def_653, type, sK516: ((subst > term > subst > $o) > term)).
thf(func_def_654, type, sK517: ((subst > term > subst > $o) > term)).
thf(func_def_655, type, sK518: ((subst > term > subst > $o) > subst)).
thf(func_def_656, type, sK519: ((subst > term > subst > $o) > term)).
thf(func_def_657, type, sK520: ((subst > term > subst > $o) > subst)).
thf(func_def_658, type, sK521: ((subst > term > subst > $o) > subst)).
thf(func_def_659, type, sK522: ((term > $o) > term)).
thf(func_def_660, type, sK523: ((term > $o) > term)).
thf(func_def_661, type, sK524: ((term > $o) > term)).
thf(func_def_662, type, sK525: ((term > $o) > term)).
thf(func_def_663, type, sK526: term).
thf(func_def_664, type, sK527: (subst > term > subst > $o)).
thf(func_def_665, type, sK528: term).
thf(func_def_666, type, sK529: (term > $o)).
thf(func_def_667, type, sK530: term).
thf(func_def_668, type, sK531: (term > term)).
thf(func_def_669, type, sK532: term).
thf(func_def_670, type, sK533: (term > subst > term > term)).
thf(func_def_671, type, sK534: term).
thf(func_def_672, type, sK535: ((term > $o) > term)).
thf(func_def_673, type, sK536: ((term > $o) > term)).
thf(func_def_674, type, sK537: ((term > $o) > term)).
thf(func_def_675, type, sK538: ((term > $o) > term)).
thf(func_def_676, type, sK539: (term > $o)).
thf(func_def_677, type, sK540: term).
thf(func_def_678, type, sK541: (term > term)).
thf(func_def_679, type, sK542: (subst > term > subst > $o)).
thf(func_def_680, type, sK543: term).
thf(func_def_681, type, sK544: ((subst > term > subst > $o) > term)).
thf(func_def_682, type, sK545: ((subst > term > subst > $o) > subst)).
thf(func_def_683, type, sK546: ((subst > term > subst > $o) > subst)).
thf(func_def_684, type, sK547: ((subst > term > subst > $o) > subst)).
thf(func_def_685, type, sK548: ((subst > term > subst > $o) > term)).
thf(func_def_686, type, sK549: ((subst > term > subst > $o) > subst)).
thf(func_def_687, type, sK550: ((subst > term > subst > $o) > subst)).
thf(func_def_688, type, sK551: ((subst > term > subst > $o) > subst)).
thf(func_def_689, type, sK552: ((subst > term > subst > $o) > term)).
thf(func_def_690, type, vNOT: ($o > $o)).
thf(f1,conjecture,(
  (hoasinduction_lem1 = ! [X0 : (subst > term > subst > $o)] : (! [X3 : subst,X1 : subst,X2 : term,X4 : subst] : ((X0 @ X1 @ X2 @ (comp @ X4 @ X3)) => (X0 @ (comp @ X1 @ X4) @ (sub @ X2 @ X4) @ X3)) => (! [X2 : term,X3 : subst,X4 : subst,X1 : subst] : ((X0 @ (comp @ X1 @ X4) @ (sub @ X2 @ X4) @ X3) => (X0 @ X1 @ X2 @ (comp @ X4 @ X3))) => (! [X2 : term] : ((hoasvar @ id @ X2 @ id) => (X0 @ id @ X2 @ id)) => ! [X2 : term] : ((var @ X2) => (X0 @ id @ X2 @ id))))))),
  file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasinduction_lem1)).
thf(f2,negated_conjecture,(
  ~ (hoasinduction_lem1 = ! [X0 : (subst > term > subst > $o)] : (! [X3 : subst,X1 : subst,X2 : term,X4 : subst] : ((X0 @ X1 @ X2 @ (comp @ X4 @ X3)) => (X0 @ (comp @ X1 @ X4) @ (sub @ X2 @ X4) @ X3)) => (! [X2 : term,X3 : subst,X4 : subst,X1 : subst] : ((X0 @ (comp @ X1 @ X4) @ (sub @ X2 @ X4) @ X3) => (X0 @ X1 @ X2 @ (comp @ X4 @ X3))) => (! [X2 : term] : ((hoasvar @ id @ X2 @ id) => (X0 @ id @ X2 @ id)) => ! [X2 : term] : ((var @ X2) => (X0 @ id @ X2 @ id))))))),
  inference(negated_conjecture,[status(cth)],[f1])).
thf(f3,axiom,(
  ulamvarsh & hoasinduction_lem2_gthm & pushprop_lthm & pushprop_lem1_gthm & (! [X7 : (subst > term > subst > $o),X25 : term] : ((X7 @ id @ (lam @ X25) @ id) | ~ ! [X14 : (subst > term > term)] : ((X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X15 : subst,X6 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id))) | ~ ! [X10 : term] : ((X7 @ id @ (sub @ X25 @ (push @ X10 @ id)) @ id) | ~(X7 @ id @ X10 @ id))) <=> hoasinduction_lem3a) & apnotvar & hoasinduction_lem3_gthm & (induction2lem_lthm <=> (! [X5 : term,X6 : subst] : (X5 = ((sub @ one @ (push @ X5 @ X6)))) => (! [X5 : term,X6 : subst] : (X6 = ((comp @ sh @ (push @ X5 @ X6)))) => (! [X6 : subst] : (X6 = ((comp @ X6 @ id))) => (! [X23 : term,X7 : (term > $o)] : (~ ! [X5 : term] : ((X7 @ X5) | ~(var @ X5)) | ~ ! [X5 : term] : (~(X7 @ X5) | (X7 @ (lam @ X5))) | (X7 @ X23) | ~ ! [X10 : term,X5 : term] : (~(X7 @ X10) | (X7 @ (ap @ X5 @ X10)) | ~(X7 @ X5))) => ! [X29 : subst,X28 : term,X7 : (term > $o)] : (~ ! [X10 : term,X5 : term] : ((X7 @ (ap @ X5 @ X10)) | ~(X7 @ X10) | ~(X7 @ X5)) | (X7 @ (sub @ X28 @ X29)) | ~ ! [X10 : term] : (~(var @ X10) | (X7 @ (sub @ X10 @ X29))) | ~ ! [X5 : term] : ((X7 @ (lam @ X5)) | ~ ! [X10 : term] : (~(X7 @ X10) | (X7 @ (sub @ X5 @ (push @ X10 @ id))))))))))) & (pushprop_lem1v2 <=> ! [X6 : subst,X8 : (term > $o),X7 : (term > $o),X5 : term] : ((X8 @ one) | ~(X7 @ X5) | ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ (sub @ X9 @ (push @ X5 @ X6))))))) & hoasapnotvar & hoasinduction_lem2v2_gthm & ~lamnotap & (sh = ((d2subst @ d_id))) & (termmset_lthm <=> (! [X5 : term] : (X5 = ((sub @ X5 @ id))) => ! [X5 : term] : (X5 = ((sub @ X5 @ id))))) & (pushprop_lem0 <=> ! [X6 : subst,X7 : (term > $o),X5 : term] : ~ ! [X8 : (term > $o)] : ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ (sub @ X9 @ (push @ X5 @ X6)))))) & axabs & pushprop_lem0_gthm & pushprop & hoasinduction_lem1_gthm & hoasinduction_lem1 & hoasinduction_gthm & hoaslamnotvar_lthm & (((sub @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2term @ d_one))) & (hoasinduction_lem3_lthm <=> (! [X5 : term] : (X5 = ((sub @ X5 @ id))) => (! [X7 : (subst > term > subst > $o),X24 : term] : ((X7 @ id @ (lam @ (sub @ X24 @ (push @ one @ sh))) @ id) | ~ ! [X10 : term] : ((X7 @ id @ (sub @ X24 @ (push @ X10 @ id)) @ id) | ~(X7 @ id @ X10 @ id)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | ~ ! [X5 : term,X15 : subst,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id))) => ! [X13 : term,X7 : (subst > term > subst > $o)] : (~ ! [X10 : term] : ((X7 @ id @ (sub @ X13 @ (push @ X10 @ id)) @ id) | ~(X7 @ id @ X10 @ id)) | (X7 @ id @ (lam @ X13) @ id) | ~ ! [X5 : term,X16 : subst,X6 : subst,X15 : subst] : ((X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | ~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term,X15 : subst,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id))) | ~ ! [X15 : subst,X16 : subst,X5 : term,X6 : subst] : ((X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | ~(X7 @ X6 @ X5 @ (comp @ X16 @ X15))))))) & (hoasapinj2_lthm <=> (! [X12 : term,X10 : term,X11 : term,X5 : term] : ((((ap @ X5 @ X11)) != ((ap @ X10 @ X12))) | (X11 = X12)) => ! [X10 : term,X11 : term,X12 : term,X5 : term] : ((X11 = X12) | (((ap @ (sub @ X5 @ id) @ X11)) != ((ap @ (sub @ X10 @ id) @ X12)))))) & hoasapnotvar_lthm & ~(var @ (d2term @ d_one)) & hoasinduction_lem1v2_gthm & hoaslamnotap_lthm & (induction2lem <=> ! [X29 : subst,X7 : (term > $o),X28 : term] : (~ ! [X10 : term] : (~(var @ X10) | (X7 @ (sub @ X10 @ X29))) | ~ ! [X5 : term] : ((X7 @ (lam @ X5)) | ~ ! [X10 : term] : ((X7 @ (sub @ X5 @ (push @ X10 @ id))) | ~(X7 @ X10))) | (X7 @ (sub @ X28 @ X29)) | ~ ! [X5 : term,X10 : term] : (~(X7 @ X10) | ~(X7 @ X5) | (X7 @ (ap @ X5 @ X10))))) & (! [X7 : (subst > term > subst > $o)] : ~ ! [X8 : (term > $o)] : ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) <=> hoasinduction_lem0_lthm) & (hoasinduction_lem3aa <=> ! [X7 : (subst > term > subst > $o),X24 : term] : (~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term,X15 : subst,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15))))) | (X7 @ id @ (lam @ (sub @ X24 @ (push @ one @ sh))) @ id) | ~ ! [X10 : term] : (~(X7 @ id @ X10 @ id) | (X7 @ id @ (sub @ X24 @ (push @ X10 @ id)) @ id)))) & ! [X2 : d_subst,X1 : d_subst] : ((((d2subst @ X1)) = ((d2subst @ X2))) => (X1 = X2)) & pushprop_lthm_orig & (((ap @ (d2term @ d_one) @ (d2term @ d_one))) = ((d2term @ d_one))) & (((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) = ((d2term @ d_one))) & hoaslaminj_gthm & hoaslamnotvar & (induction <=> ! [X7 : (term > $o),X23 : term] : (~ ! [X5 : term,X10 : term] : ((X7 @ (ap @ X5 @ X10)) | ~(X7 @ X5) | ~(X7 @ X10)) | ~ ! [X5 : term] : (~(var @ X5) | (X7 @ X5)) | ~ ! [X5 : term] : ((X7 @ (lam @ X5)) | ~(X7 @ X5)) | (X7 @ X23))) & (axshiftcons <=> ! [X6 : subst,X5 : term] : (X6 = ((comp @ sh @ (push @ X5 @ X6))))) & (hoasinduction_lem3a_lthm <=> (! [X5 : term] : (X5 = ((sub @ X5 @ id))) => (! [X7 : (subst > term > subst > $o),X24 : term] : (~ ! [X10 : term] : (~(X7 @ id @ X10 @ id) | (X7 @ id @ (sub @ X24 @ (push @ X10 @ id)) @ id)) | (X7 @ id @ (lam @ (sub @ X24 @ (push @ one @ sh))) @ id) | ~ ! [X14 : (subst > term > term)] : ((X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | ~ ! [X5 : term,X15 : subst,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))))) => ! [X25 : term,X7 : (subst > term > subst > $o)] : (~ ! [X10 : term] : ((X7 @ id @ (sub @ X25 @ (push @ X10 @ id)) @ id) | ~(X7 @ id @ X10 @ id)) | (X7 @ id @ (lam @ X25) @ id) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | ~ ! [X5 : term,X6 : subst,X15 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id)))))) & ! [X44 : d_subst] : (X44 = d_id) & ! [X48 : term] : ? [X0 : d_term] : (X48 = ((d2term @ X0))) & ~ulamvar1 & (hoasapinj1 <=> ! [X12 : term,X10 : term,X5 : term,X11 : term] : ((X5 = X10) | (((ap @ (sub @ X5 @ id) @ X11)) != ((ap @ (sub @ X10 @ id) @ X12))))) & ulamvarind & (apinj1 <=> ! [X12 : term,X10 : term,X5 : term,X11 : term] : ((((ap @ X5 @ X11)) != ((ap @ X10 @ X12))) | (X5 = X10))) & (! [X7 : (subst > term > subst > $o),X36 : term] : (~ ! [X10 : term] : ((X7 @ id @ (sub @ X36 @ (push @ X10 @ id)) @ id) | ~(X7 @ id @ X10 @ id)) | ~ ! [X37 : term,X14 : (subst > term > term)] : (~ ! [X40 : subst,X39 : term,X38 : subst] : (((X14 @ (comp @ X38 @ X40) @ (sub @ X39 @ X40))) = ((sub @ X37 @ (push @ (sub @ X39 @ X40) @ (comp @ X38 @ X40))))) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X41 : subst,X42 : term,X43 : subst] : (((sub @ (X14 @ X41 @ X42) @ X43)) = ((sub @ (sub @ X37 @ (push @ X42 @ X41)) @ X43))) | ~ ! [X5 : term] : ((X7 @ id @ (X14 @ id @ X5) @ id) | ~(X7 @ id @ X5 @ id))) | (X7 @ id @ (lam @ (sub @ X36 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aaa) & ! [X46 : d_term,X47 : d_term] : ((((d2term @ X46)) = ((d2term @ X47))) => (X46 = X47)) & pushprop_lem2v2_gthm & (! [X5 : term,X10 : term,X11 : term,X12 : term] : ((((ap @ X5 @ X11)) != ((ap @ X10 @ X12))) | (X11 = X12)) <=> apinj2) & induction2_gthm & (pushprop_lem1_lthm <=> (! [X5 : term,X6 : subst] : (X5 = ((sub @ one @ (push @ X5 @ X6)))) => (! [X5 : term,X6 : subst] : (X6 = ((comp @ sh @ (push @ X5 @ X6)))) => ! [X6 : subst,X5 : term,X7 : (term > $o),X10 : term,X16 : (term > $o)] : (~(X7 @ X5) | (X16 @ (sub @ X5 @ (push @ X10 @ X6))))))) & ((^[X5 : term, X6 : subst, X7 : (term > $o), X8 : (term > $o)] : (! [X9 : term] : (((X8 @ X9)) = ((X7 @ (sub @ X9 @ (push @ X5 @ X6))))))) = pushprop_p_and_p_prime) & (shinj <=> ! [X10 : term,X5 : term] : ((((sub @ X5 @ sh)) != ((sub @ X10 @ sh))) | (X5 = X10))) & substmonoid_gthm & induction2lem_gthm & (induction2 <=> ! [X20 : term,X7 : (term > $o)] : (~ ! [X5 : term,X10 : term] : ((X7 @ (ap @ X5 @ X10)) | ~(X7 @ X10) | ~(X7 @ X5)) | (X7 @ X20) | ~ ! [X5 : term] : (~(var @ X5) | (X7 @ X5)) | ~ ! [X5 : term] : (~ ! [X10 : term] : ((X7 @ (sub @ X5 @ (push @ X10 @ id))) | ~(X7 @ X10)) | (X7 @ (lam @ X5))))) & (hoasinduction_lem3b <=> ! [X10 : term] : ~ ! [X14 : (subst > term > term)] : (((X14 @ sh @ one)) != ((sub @ X10 @ (push @ one @ sh))))) & ! [X45 : subst] : ? [X44 : d_subst] : (X45 = ((d2subst @ X44))) & hoasapnotvar_gthm & (hoasinduction_p_and_p_prime = (^[X7 : (subst > term > subst > $o), X8 : (term > $o)] : (! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id)))))) & hoasapinj1_gthm & ! [X0 : d_term] : (X0 = d_one) & (axscons <=> ! [X6 : subst] : (X6 = ((push @ (sub @ one @ X6) @ (comp @ sh @ X6))))) & (! [X14 : (subst > term > term),X33 : (subst > term > term),X35 : term,X34 : subst] : (~ ! [X15 : subst,X5 : term,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X15 : subst,X6 : subst,X5 : term] : (((sub @ (X33 @ X6 @ X5) @ X15)) = ((X33 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | (((lam @ (X14 @ sh @ one))) != ((lam @ (X33 @ sh @ one)))) | (((X14 @ X34 @ X35)) = ((X33 @ X34 @ X35)))) <=> hoaslaminj) & (((comp @ (d2subst @ d_id) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & (axidr <=> ! [X6 : subst] : (X6 = ((comp @ X6 @ id)))) & termmset_gthm & pushprop_lem2v2_lthm & (! [X10 : term] : ~ ! [X14 : (subst > term > term)] : ~ ! [X6 : subst,X5 : term] : (((sub @ X10 @ (push @ X5 @ X6))) = ((X14 @ X6 @ X5))) <=> hoasinduction_lem3v2_f) & axassoc & (hoasinduction_lem3aa_lthm <=> ! [X7 : (subst > term > subst > $o),X24 : term] : (~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term,X15 : subst,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term] : ((X7 @ id @ (X14 @ id @ X5) @ id) | ~(X7 @ id @ X5 @ id))) | (X7 @ id @ (lam @ (sub @ X24 @ (push @ one @ sh))) @ id) | ~ ! [X10 : term] : ((X7 @ id @ (sub @ X24 @ (push @ X10 @ id)) @ id) | ~(X7 @ id @ X10 @ id)))) & (hoasinduction <=> ! [X17 : term,X7 : (subst > term > subst > $o)] : (~ ! [X5 : term] : (~(var @ (sub @ X5 @ id)) | (X7 @ id @ X5 @ id)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X15 : subst,X6 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15))))) | ~ ! [X6 : subst,X15 : subst,X16 : subst,X5 : term] : (~(X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | (X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~ ! [X5 : term,X10 : term] : ((X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id) | ~(X7 @ id @ X10 @ id) | ~(X7 @ id @ X5 @ id)) | ~ ! [X6 : subst,X5 : term,X16 : subst,X15 : subst] : (~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | (X7 @ X6 @ X5 @ (comp @ X16 @ X15))) | (X7 @ id @ X17 @ id))) & axvarshift & hoaslamnotap_gthm & (! [X6 : subst,X16 : (term > $o),X5 : term,X7 : (term > $o),X10 : term] : (~(X7 @ X5) | (X16 @ (sub @ X5 @ (push @ X10 @ X6)))) <=> pushprop_lem1) & (! [X5 : term] : (X5 = ((sub @ X5 @ id))) <=> termmset) & hoasinduction_lem3a_gthm & (one = ((d2term @ d_one))) & (! [X5 : term,X10 : term] : ((X5 = X10) | (((lam @ X5)) != ((lam @ X10)))) <=> laminj) & (axidl <=> ! [X6 : subst] : (X6 = ((comp @ id @ X6)))) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & (((push @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & hoasinduction_lem1_lthm & ((! [X5 : term,X6 : subst] : (X5 = ((sub @ one @ (push @ X5 @ X6)))) => ! [X6 : subst,X5 : term,X7 : (term > $o),X8 : (term > $o)] : (~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ (sub @ X9 @ (push @ X5 @ X6))))) | ~(X7 @ X5) | (X8 @ one))) <=> pushprop_lem1v2_lthm) & (! [X7 : (subst > term > subst > $o)] : ~ ! [X8 : (term > $o)] : ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) <=> hoasinduction_lem0) & (! [X13 : term,X7 : (subst > term > subst > $o)] : (~ ! [X5 : term,X6 : subst,X15 : subst,X16 : subst] : ((X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | ~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : ((X7 @ id @ (X14 @ id @ X5) @ id) | ~(X7 @ id @ X5 @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X6 : subst,X15 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15))))) | ~ ! [X15 : subst,X16 : subst,X6 : subst,X5 : term] : ((X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | ~(X7 @ X6 @ X5 @ (comp @ X16 @ X15))) | (X7 @ id @ (lam @ X13) @ id) | ~ ! [X10 : term] : ((X7 @ id @ (sub @ X13 @ (push @ X10 @ id)) @ id) | ~(X7 @ id @ X10 @ id))) <=> hoasinduction_lem3) & hoasinduction_lem3v2_gthm & axclos & (! [X10 : term] : ~ ! [X14 : (subst > term > term)] : (((X14 @ sh @ one)) != ((sub @ X10 @ (push @ one @ sh)))) <=> hoasinduction_lem3b_lthm) & hoasinduction_lem1v2 & hoaslamnotvar_gthm & pushprop_lem1v2_gthm & axmap & (hoasinduction_lem3v2a <=> ! [X22 : term,X7 : (subst > term > subst > $o),X8 : (term > $o)] : ((X8 @ (lam @ X22)) | ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) | ~ ! [X10 : term] : (~(X8 @ X10) | (X8 @ (sub @ X22 @ (push @ X10 @ id)))) | ~ ! [X14 : (subst > term > term)] : ((X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X15 : subst,X6 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id))))) & pushprop_gthm & (axvarid <=> ! [X5 : term] : (X5 = ((sub @ X5 @ id)))) & hoasapinj2_gthm & (! [X5 : term,X6 : subst] : (X5 = ((sub @ one @ (push @ X5 @ X6)))) <=> axvarcons) & hoasinduction_lem3b_gthm & ((! [X10 : term] : ~ ! [X14 : (subst > term > term)] : ~ ! [X6 : subst,X5 : term] : (((sub @ X10 @ (push @ X5 @ X6))) = ((X14 @ X6 @ X5))) => (! [X5 : term] : (X5 = ((sub @ X5 @ id))) => ! [X8 : (term > $o),X7 : (subst > term > subst > $o),X22 : term] : (~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) | ~ ! [X10 : term] : ((X8 @ (sub @ X22 @ (push @ X10 @ id))) | ~(X8 @ X10)) | (X8 @ (lam @ X22)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X6 : subst,X15 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X5 : term] : ((X7 @ id @ (X14 @ id @ X5) @ id) | ~(X7 @ id @ X5 @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id))))) <=> hoasinduction_lem3v2a_lthm) & ((! [X7 : (subst > term > subst > $o)] : ~ ! [X8 : (term > $o)] : ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) => (! [X7 : (term > $o),X20 : term] : (~ ! [X5 : term] : (~ ! [X10 : term] : ((X7 @ (sub @ X5 @ (push @ X10 @ id))) | ~(X7 @ X10)) | (X7 @ (lam @ X5))) | (X7 @ X20) | ~ ! [X10 : term,X5 : term] : ((X7 @ (ap @ X5 @ X10)) | ~(X7 @ X5) | ~(X7 @ X10)) | ~ ! [X5 : term] : (~(var @ X5) | (X7 @ X5))) => (! [X5 : term] : (X5 = ((sub @ X5 @ id))) => (! [X7 : (subst > term > subst > $o),X8 : (term > $o),X22 : term] : (~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) | ~ ! [X10 : term] : ((X8 @ (sub @ X22 @ (push @ X10 @ id))) | ~(X8 @ X10)) | (X8 @ (lam @ X22)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : ((X7 @ id @ (X14 @ id @ X5) @ id) | ~(X7 @ id @ X5 @ id)) | ~ ! [X6 : subst,X15 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id))) => ! [X21 : term,X7 : (subst > term > subst > $o)] : (~ ! [X14 : (subst > term > term)] : ((X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X6 : subst,X15 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id))) | ~ ! [X10 : term,X5 : term] : (~(X7 @ id @ X10 @ id) | (X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id) | ~(X7 @ id @ X5 @ id)) | (X7 @ id @ X21 @ id)))))) <=> hoasinduction_no_psi_cond_lthm) & (! [X26 : term,X27 : term,X7 : (subst > term > subst > $o),X8 : (term > $o)] : (~(X8 @ X27) | (X8 @ (ap @ X26 @ X27)) | ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) | ~ ! [X5 : term,X10 : term] : (~(X7 @ id @ X10 @ id) | (X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id) | ~(X7 @ id @ X5 @ id)) | ~ ! [X15 : subst,X6 : subst,X5 : term,X16 : subst] : (~(X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | (X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~(X8 @ X26) | ~ ! [X15 : subst,X6 : subst,X16 : subst,X5 : term] : (~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | (X7 @ X6 @ X5 @ (comp @ X16 @ X15)))) <=> hoasinduction_lem2v2) & (! [X5 : term,X11 : term,X10 : term,X12 : term] : ((X11 = X12) | (((ap @ (sub @ X5 @ id) @ X11)) != ((ap @ (sub @ X10 @ id) @ X12)))) <=> hoasapinj2) & ((! [X6 : subst] : (X6 = ((comp @ id @ X6))) => (! [X6 : subst] : (X6 = ((comp @ X6 @ id))) => (! [X6 : subst] : (X6 = ((comp @ id @ X6))) & ! [X6 : subst] : (X6 = ((comp @ X6 @ id)))))) <=> substmonoid_lthm) & (hoasinduction_lem2 <=> ! [X19 : term,X18 : term,X7 : (subst > term > subst > $o)] : (~ ! [X15 : subst,X5 : term,X6 : subst,X16 : subst] : (~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | (X7 @ X6 @ X5 @ (comp @ X16 @ X15))) | ~(X7 @ id @ X18 @ id) | ~ ! [X16 : subst,X15 : subst,X5 : term,X6 : subst] : (~(X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | (X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | (X7 @ id @ (ap @ X18 @ X19) @ id) | ~ ! [X5 : term,X10 : term] : ((X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id) | ~(X7 @ id @ X5 @ id) | ~(X7 @ id @ X10 @ id)) | ~(X7 @ id @ X19 @ id))) & pushprop_lem2v2 & (hoasinduction_lem3v2_f_lthm <=> ! [X10 : term] : ~ ! [X14 : (subst > term > term)] : ~ ! [X5 : term,X6 : subst] : (((sub @ X10 @ (push @ X5 @ X6))) = ((X14 @ X6 @ X5)))) & axapp & (! [X30 : term,X7 : (subst > term > subst > $o),X8 : (term > $o)] : (~ ! [X6 : subst,X15 : subst,X16 : subst,X5 : term] : (~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | (X7 @ X6 @ X5 @ (comp @ X16 @ X15))) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term,X6 : subst,X15 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15))))) | ~ ! [X16 : subst,X15 : subst,X5 : term,X6 : subst] : (~(X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | (X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | (X8 @ (lam @ X30)) | ~ ! [X10 : term] : (~(X8 @ X10) | (X8 @ (sub @ X30 @ (push @ X10 @ id)))) | ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id)))) <=> hoasinduction_lem3v2) & (! [X7 : (term > $o),X5 : term,X6 : subst] : ~ ! [X8 : (term > $o)] : ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ (sub @ X9 @ (push @ X5 @ X6))))) <=> pushprop_lem0_lthm) & pushprop_lem3v2_lthm & ((^[X3 : subst, X4 : (subst > term > term)] : ((d2term @ d_one))) = hoaslam) & hoasinduction_lem2_lthm & ((! [X20 : term,X7 : (term > $o)] : (~ ! [X5 : term] : (~ ! [X10 : term] : ((X7 @ (sub @ X5 @ (push @ X10 @ id))) | ~(X7 @ X10)) | (X7 @ (lam @ X5))) | ~ ! [X5 : term] : ((X7 @ X5) | ~(var @ X5)) | (X7 @ X20) | ~ ! [X10 : term,X5 : term] : (~(X7 @ X5) | (X7 @ (ap @ X5 @ X10)) | ~(X7 @ X10))) => (! [X18 : term,X7 : (subst > term > subst > $o),X19 : term] : (~(X7 @ id @ X18 @ id) | ~ ! [X10 : term,X5 : term] : (~(X7 @ id @ X10 @ id) | (X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id) | ~(X7 @ id @ X5 @ id)) | ~ ! [X5 : term,X6 : subst,X16 : subst,X15 : subst] : (~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | (X7 @ X6 @ X5 @ (comp @ X16 @ X15))) | ~ ! [X6 : subst,X5 : term,X15 : subst,X16 : subst] : ((X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | ~(X7 @ X6 @ X5 @ (comp @ X16 @ X15))) | (X7 @ id @ (ap @ X18 @ X19) @ id) | ~(X7 @ id @ X19 @ id)) => (! [X7 : (subst > term > subst > $o),X13 : term] : (~ ! [X16 : subst,X5 : term,X6 : subst,X15 : subst] : (~(X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | (X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~ ! [X14 : (subst > term > term)] : ((X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term,X6 : subst,X15 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id))) | ~ ! [X5 : term,X6 : subst,X15 : subst,X16 : subst] : ((X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | ~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | (X7 @ id @ (lam @ X13) @ id) | ~ ! [X10 : term] : (~(X7 @ id @ X10 @ id) | (X7 @ id @ (sub @ X13 @ (push @ X10 @ id)) @ id))) => ! [X7 : (subst > term > subst > $o),X17 : term] : (~ ! [X6 : subst,X15 : subst,X16 : subst,X5 : term] : (~(X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | (X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~ ! [X10 : term,X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id) | ~(X7 @ id @ X10 @ id)) | (X7 @ id @ X17 @ id) | ~ ! [X5 : term,X6 : subst,X15 : subst,X16 : subst] : ((X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | ~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~ ! [X5 : term] : (~(var @ (sub @ X5 @ id)) | (X7 @ id @ X5 @ id)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X6 : subst,X15 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X5 : term] : ((X7 @ id @ (X14 @ id @ X5) @ id) | ~(X7 @ id @ X5 @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id)))))) <=> hoasinduction_lthm) & ((! [X7 : (subst > term > subst > $o)] : ~ ! [X8 : (term > $o)] : ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) => (! [X20 : term,X7 : (term > $o)] : ((X7 @ X20) | ~ ! [X5 : term] : (~(var @ X5) | (X7 @ X5)) | ~ ! [X5 : term] : (~ ! [X10 : term] : (~(X7 @ X10) | (X7 @ (sub @ X5 @ (push @ X10 @ id)))) | (X7 @ (lam @ X5))) | ~ ! [X5 : term,X10 : term] : (~(X7 @ X5) | ~(X7 @ X10) | (X7 @ (ap @ X5 @ X10)))) => (! [X5 : term] : (X5 = ((sub @ X5 @ id))) => (! [X8 : (term > $o),X7 : (subst > term > subst > $o),X22 : term] : (~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) | ~ ! [X14 : (subst > term > term)] : (~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term,X15 : subst,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15))))) | (X8 @ (lam @ X22)) | ~ ! [X10 : term] : (~(X8 @ X10) | (X8 @ (sub @ X22 @ (push @ X10 @ id))))) => ! [X7 : (subst > term > subst > $o),X17 : term] : (~ ! [X6 : subst,X5 : term,X15 : subst,X16 : subst] : (~(X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | (X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15)) | ~ ! [X5 : term] : (~(var @ (sub @ X5 @ id)) | (X7 @ id @ X5 @ id)) | ~ ! [X14 : (subst > term > term)] : (~ ! [X6 : subst,X15 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id))) | ~ ! [X5 : term,X10 : term] : (~(X7 @ id @ X10 @ id) | ~(X7 @ id @ X5 @ id) | (X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id)) | (X7 @ id @ X17 @ id) | ~ ! [X5 : term,X16 : subst,X6 : subst,X15 : subst] : ((X7 @ X6 @ X5 @ (comp @ X16 @ X15)) | ~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15))))))) <=> hoasinduction_lthm_3) & (id = ((d2subst @ d_id))) & ((! [X5 : term,X6 : subst] : (X5 = ((sub @ one @ (push @ X5 @ X6)))) => (! [X6 : subst,X5 : term] : (X6 = ((comp @ sh @ (push @ X5 @ X6)))) => (! [X10 : term,X5 : term] : ((X5 = X10) | (((lam @ X5)) != ((lam @ X10)))) => ! [X35 : term,X33 : (subst > term > term),X34 : subst,X14 : (subst > term > term)] : ((((X14 @ X34 @ X35)) = ((X33 @ X34 @ X35))) | (((lam @ (X14 @ sh @ one))) != ((lam @ (X33 @ sh @ one)))) | ~ ! [X6 : subst,X15 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X15 : subst,X5 : term,X6 : subst] : (((sub @ (X33 @ X6 @ X5) @ X15)) = ((X33 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))))))) <=> hoaslaminj_lthm) & ((! [X5 : term] : (X5 = ((sub @ X5 @ id))) => ! [X30 : term,X7 : (subst > term > subst > $o),X8 : (term > $o)] : (~ ! [X14 : (subst > term > term)] : (~ ! [X15 : subst,X6 : subst,X5 : term] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15)))) | ~ ! [X5 : term] : (~(X7 @ id @ X5 @ id) | (X7 @ id @ (X14 @ id @ X5) @ id)) | (X7 @ id @ (lam @ (X14 @ sh @ one)) @ id)) | ~ ! [X10 : term] : (~(X8 @ X10) | (X8 @ (sub @ X30 @ (push @ X10 @ id)))) | ~ ! [X9 : term] : (((X8 @ X9)) = ((X7 @ id @ X9 @ id))) | ~ ! [X15 : subst,X16 : subst,X6 : subst,X5 : term] : ((X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | ~(X7 @ X6 @ X5 @ (comp @ X16 @ X15))) | (X8 @ (lam @ X30)) | ~ ! [X5 : term,X6 : subst,X15 : subst,X16 : subst] : (~(X7 @ (comp @ X6 @ X16) @ (sub @ X5 @ X16) @ X15) | (X7 @ X6 @ X5 @ (comp @ X16 @ X15))))) <=> hoasinduction_lem3v2_lthm) & pushprop_lem3v2 & ((! [X5 : term] : (X5 = ((sub @ X5 @ id))) => (! [X28 : term,X29 : subst,X7 : (term > $o)] : (~ ! [X10 : term,X5 : term] : (~(X7 @ X5) | (X7 @ (ap @ X5 @ X10)) | ~(X7 @ X10)) | ~ ! [X10 : term] : (~(var @ X10) | (X7 @ (sub @ X10 @ X29))) | ~ ! [X5 : term] : ((X7 @ (lam @ X5)) | ~ ! [X10 : term] : ((X7 @ (sub @ X5 @ (push @ X10 @ id))) | ~(X7 @ X10))) | (X7 @ (sub @ X28 @ X29))) => ! [X20 : term,X7 : (term > $o)] : (~ ! [X5 : term] : ((X7 @ (lam @ X5)) | ~ ! [X10 : term] : (~(X7 @ X10) | (X7 @ (sub @ X5 @ (push @ X10 @ id))))) | ~ ! [X5 : term] : ((X7 @ X5) | ~(var @ X5)) | (X7 @ X20) | ~ ! [X5 : term,X10 : term] : (~(X7 @ X5) | (X7 @ (ap @ X5 @ X10)) | ~(X7 @ X10))))) <=> induction2_lthm) & (! [X32 : term,X14 : (subst > term > term),X31 : term] : ((((lam @ (X14 @ sh @ one))) != ((ap @ (sub @ X31 @ id) @ X32))) | ~ ! [X5 : term,X15 : subst,X6 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15))))) <=> hoaslamnotap) & (substmonoid <=> (! [X6 : subst] : (X6 = ((comp @ X6 @ id))) & ! [X6 : subst] : (X6 = ((comp @ id @ X6))))) & (hoasapinj1_lthm <=> (! [X5 : term] : (X5 = ((sub @ X5 @ id))) => (! [X12 : term,X11 : term,X10 : term,X5 : term] : ((X5 = X10) | (((ap @ X5 @ X11)) != ((ap @ X10 @ X12)))) => ! [X5 : term,X11 : term,X10 : term,X12 : term] : ((X5 = X10) | (((ap @ (sub @ X5 @ id) @ X11)) != ((ap @ (sub @ X10 @ id) @ X12))))))) & lamnotvar & (((lam @ (d2term @ d_one))) = ((d2term @ d_one))) & (! [X7 : (subst > term > subst > $o),X21 : term] : ((X7 @ id @ X21 @ id) | ~ ! [X14 : (subst > term > term)] : ((X7 @ id @ (lam @ (X14 @ sh @ one)) @ id) | ~ ! [X5 : term] : ((X7 @ id @ (X14 @ id @ X5) @ id) | ~(X7 @ id @ X5 @ id)) | ~ ! [X5 : term,X6 : subst,X15 : subst] : (((sub @ (X14 @ X6 @ X5) @ X15)) = ((X14 @ (comp @ X6 @ X15) @ (sub @ X5 @ X15))))) | ~ ! [X5 : term,X10 : term] : ((X7 @ id @ (ap @ (sub @ X5 @ id) @ X10) @ id) | ~(X7 @ id @ X10 @ id) | ~(X7 @ id @ X5 @ id))) <=> hoasinduction_no_psi_cond)),
  file('/export/starexec/sandbox/benchmark/theBenchmark.p',alg444_1)).
thf(f4,plain,(
  ulamvarsh & hoasinduction_lem2_gthm & pushprop_lthm & pushprop_lem1_gthm & (! [X0 : (subst > term > subst > $o),X1 : term] : ((X0 @ id @ (lam @ X1) @ id) | ~ ! [X2 : (subst > term > term)] : ((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id) | ~ ! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) | ~ ! [X6 : term] : (~(X0 @ id @ X6 @ id) | (X0 @ id @ (X2 @ id @ X6) @ id))) | ~ ! [X7 : term] : ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id) | ~(X0 @ id @ X7 @ id))) <=> hoasinduction_lem3a) & apnotvar & hoasinduction_lem3_gthm & (induction2lem_lthm <=> (! [X8 : term,X9 : subst] : (((sub @ one @ (push @ X8 @ X9))) = X8) => (! [X10 : term,X11 : subst] : (((comp @ sh @ (push @ X10 @ X11))) = X11) => (! [X12 : subst] : (((comp @ X12 @ id)) = X12) => (! [X13 : term,X14 : (term > $o)] : (~ ! [X15 : term] : ((X14 @ X15) | ~(var @ X15)) | ~ ! [X16 : term] : (~(X14 @ X16) | (X14 @ (lam @ X16))) | (X14 @ X13) | ~ ! [X17 : term,X18 : term] : (~(X14 @ X17) | (X14 @ (ap @ X18 @ X17)) | ~(X14 @ X18))) => ! [X19 : subst,X20 : term,X21 : (term > $o)] : (~ ! [X22 : term,X23 : term] : ((X21 @ (ap @ X23 @ X22)) | ~(X21 @ X22) | ~(X21 @ X23)) | (X21 @ (sub @ X20 @ X19)) | ~ ! [X24 : term] : (~(var @ X24) | (X21 @ (sub @ X24 @ X19))) | ~ ! [X25 : term] : ((X21 @ (lam @ X25)) | ~ ! [X26 : term] : (~(X21 @ X26) | (X21 @ (sub @ X25 @ (push @ X26 @ id))))))))))) & (pushprop_lem1v2 <=> ! [X27 : subst,X28 : (term > $o),X29 : (term > $o),X30 : term] : ((X28 @ one) | ~(X29 @ X30) | ~ ! [X31 : term] : (((X28 @ X31)) = ((X29 @ (sub @ X31 @ (push @ X30 @ X27))))))) & hoasapnotvar & hoasinduction_lem2v2_gthm & ~lamnotap & (sh = ((d2subst @ d_id))) & (termmset_lthm <=> (! [X32 : term] : (((sub @ X32 @ id)) = X32) => ! [X33 : term] : (((sub @ X33 @ id)) = X33))) & (pushprop_lem0 <=> ! [X34 : subst,X35 : (term > $o),X36 : term] : ~ ! [X37 : (term > $o)] : ~ ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & axabs & pushprop_lem0_gthm & pushprop & hoasinduction_lem1_gthm & hoasinduction_lem1 & hoasinduction_gthm & hoaslamnotvar_lthm & (((sub @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2term @ d_one))) & (hoasinduction_lem3_lthm <=> (! [X39 : term] : (((sub @ X39 @ id)) = X39) => (! [X40 : (subst > term > subst > $o),X41 : term] : ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id) | ~ ! [X42 : term] : ((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id) | ~(X40 @ id @ X42 @ id)) | ~ ! [X43 : (subst > term > term)] : (~ ! [X44 : term] : (~(X40 @ id @ X44 @ id) | (X40 @ id @ (X43 @ id @ X44) @ id)) | ~ ! [X45 : term,X46 : subst,X47 : subst] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) = ((sub @ (X43 @ X47 @ X45) @ X46))) | (X40 @ id @ (lam @ (X43 @ sh @ one)) @ id))) => ! [X48 : term,X49 : (subst > term > subst > $o)] : (~ ! [X50 : term] : ((X49 @ id @ (sub @ X48 @ (push @ X50 @ id)) @ id) | ~(X49 @ id @ X50 @ id)) | (X49 @ id @ (lam @ X48) @ id) | ~ ! [X51 : term,X52 : subst,X53 : subst,X54 : subst] : ((X49 @ X53 @ X51 @ (comp @ X52 @ X54)) | ~(X49 @ (comp @ X53 @ X52) @ (sub @ X51 @ X52) @ X54)) | ~ ! [X55 : (subst > term > term)] : (~ ! [X56 : term,X57 : subst,X58 : subst] : (((X55 @ (comp @ X58 @ X57) @ (sub @ X56 @ X57))) = ((sub @ (X55 @ X58 @ X56) @ X57))) | (X49 @ id @ (lam @ (X55 @ sh @ one)) @ id) | ~ ! [X59 : term] : (~(X49 @ id @ X59 @ id) | (X49 @ id @ (X55 @ id @ X59) @ id))) | ~ ! [X60 : subst,X61 : subst,X62 : term,X63 : subst] : ((X49 @ (comp @ X63 @ X61) @ (sub @ X62 @ X61) @ X60) | ~(X49 @ X63 @ X62 @ (comp @ X61 @ X60))))))) & (hoasapinj2_lthm <=> (! [X64 : term,X65 : term,X66 : term,X67 : term] : ((((ap @ X67 @ X66)) != ((ap @ X65 @ X64))) | (X64 = X66)) => ! [X68 : term,X69 : term,X70 : term,X71 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))))) & hoasapnotvar_lthm & ~(var @ (d2term @ d_one)) & hoasinduction_lem1v2_gthm & hoaslamnotap_lthm & (induction2lem <=> ! [X72 : subst,X73 : (term > $o),X74 : term] : (~ ! [X75 : term] : (~(var @ X75) | (X73 @ (sub @ X75 @ X72))) | ~ ! [X76 : term] : ((X73 @ (lam @ X76)) | ~ ! [X77 : term] : ((X73 @ (sub @ X76 @ (push @ X77 @ id))) | ~(X73 @ X77))) | (X73 @ (sub @ X74 @ X72)) | ~ ! [X78 : term,X79 : term] : (~(X73 @ X79) | ~(X73 @ X78) | (X73 @ (ap @ X78 @ X79))))) & (! [X80 : (subst > term > subst > $o)] : ~ ! [X81 : (term > $o)] : ~ ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82))) <=> hoasinduction_lem0_lthm) & (hoasinduction_lem3aa <=> ! [X83 : (subst > term > subst > $o),X84 : term] : (~ ! [X85 : (subst > term > term)] : (~ ! [X86 : term] : (~(X83 @ id @ X86 @ id) | (X83 @ id @ (X85 @ id @ X86) @ id)) | (X83 @ id @ (lam @ (X85 @ sh @ one)) @ id) | ~ ! [X87 : term,X88 : subst,X89 : subst] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | (X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id) | ~ ! [X90 : term] : (~(X83 @ id @ X90 @ id) | (X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) & ! [X91 : d_subst,X92 : d_subst] : ((((d2subst @ X92)) = ((d2subst @ X91))) => (X91 = X92)) & pushprop_lthm_orig & (((ap @ (d2term @ d_one) @ (d2term @ d_one))) = ((d2term @ d_one))) & (((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) = ((d2term @ d_one))) & hoaslaminj_gthm & hoaslamnotvar & (induction <=> ! [X93 : (term > $o),X94 : term] : (~ ! [X95 : term,X96 : term] : ((X93 @ (ap @ X95 @ X96)) | ~(X93 @ X95) | ~(X93 @ X96)) | ~ ! [X97 : term] : (~(var @ X97) | (X93 @ X97)) | ~ ! [X98 : term] : ((X93 @ (lam @ X98)) | ~(X93 @ X98)) | (X93 @ X94))) & (axshiftcons <=> ! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99)) & (hoasinduction_lem3a_lthm <=> (! [X101 : term] : (((sub @ X101 @ id)) = X101) => (! [X102 : (subst > term > subst > $o),X103 : term] : (~ ! [X104 : term] : (~(X102 @ id @ X104 @ id) | (X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id)) | (X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id) | ~ ! [X105 : (subst > term > term)] : ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id) | ~ ! [X106 : term] : (~(X102 @ id @ X106 @ id) | (X102 @ id @ (X105 @ id @ X106) @ id)) | ~ ! [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) = ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)))))) => ! [X110 : term,X111 : (subst > term > subst > $o)] : (~ ! [X112 : term] : ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id) | ~(X111 @ id @ X112 @ id)) | (X111 @ id @ (lam @ X110) @ id) | ~ ! [X113 : (subst > term > term)] : (~ ! [X114 : term] : (~(X111 @ id @ X114 @ id) | (X111 @ id @ (X113 @ id @ X114) @ id)) | ~ ! [X115 : term,X116 : subst,X117 : subst] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))) | (X111 @ id @ (lam @ (X113 @ sh @ one)) @ id)))))) & ! [X118 : d_subst] : (d_id = X118) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & ~ulamvar1 & (hoasapinj1 <=> ! [X121 : term,X122 : term,X123 : term,X124 : term] : ((X122 = X123) | (((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))))) & ulamvarind & (apinj1 <=> ! [X125 : term,X126 : term,X127 : term,X128 : term] : ((((ap @ X127 @ X128)) != ((ap @ X126 @ X125))) | (X126 = X127))) & (! [X129 : (subst > term > subst > $o),X130 : term] : (~ ! [X131 : term] : ((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id) | ~(X129 @ id @ X131 @ id)) | ~ ! [X132 : term,X133 : (subst > term > term)] : (~ ! [X134 : subst,X135 : term,X136 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) | (X129 @ id @ (lam @ (X133 @ sh @ one)) @ id) | ~ ! [X137 : subst,X138 : term,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139))) | ~ ! [X140 : term] : ((X129 @ id @ (X133 @ id @ X140) @ id) | ~(X129 @ id @ X140 @ id))) | (X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) <=> hoasinduction_lem3aaa) & ! [X141 : d_term,X142 : d_term] : ((((d2term @ X141)) = ((d2term @ X142))) => (X141 = X142)) & pushprop_lem2v2_gthm & (! [X143 : term,X144 : term,X145 : term,X146 : term] : ((((ap @ X144 @ X146)) != ((ap @ X143 @ X145))) | (X145 = X146)) <=> apinj2) & induction2_gthm & (pushprop_lem1_lthm <=> (! [X147 : term,X148 : subst] : (((sub @ one @ (push @ X147 @ X148))) = X147) => (! [X149 : term,X150 : subst] : (((comp @ sh @ (push @ X149 @ X150))) = X150) => ! [X151 : subst,X152 : term,X153 : (term > $o),X154 : term,X155 : (term > $o)] : (~(X153 @ X152) | (X155 @ (sub @ X152 @ (push @ X154 @ X151))))))) & ((^[X156 : term, X157 : subst, X158 : (term > $o), X159 : (term > $o)] : (! [X160 : term] : (((X158 @ (sub @ X160 @ (push @ X156 @ X157)))) = ((X159 @ X160))))) = pushprop_p_and_p_prime) & (shinj <=> ! [X161 : term,X162 : term] : ((((sub @ X162 @ sh)) != ((sub @ X161 @ sh))) | (X161 = X162))) & substmonoid_gthm & induction2lem_gthm & (induction2 <=> ! [X163 : term,X164 : (term > $o)] : (~ ! [X165 : term,X166 : term] : ((X164 @ (ap @ X165 @ X166)) | ~(X164 @ X166) | ~(X164 @ X165)) | (X164 @ X163) | ~ ! [X167 : term] : (~(var @ X167) | (X164 @ X167)) | ~ ! [X168 : term] : (~ ! [X169 : term] : ((X164 @ (sub @ X168 @ (push @ X169 @ id))) | ~(X164 @ X169)) | (X164 @ (lam @ X168))))) & (hoasinduction_lem3b <=> ! [X170 : term] : ~ ! [X171 : (subst > term > term)] : (((sub @ X170 @ (push @ one @ sh))) != ((X171 @ sh @ one)))) & ! [X172 : subst] : ? [X173 : d_subst] : (((d2subst @ X173)) = X172) & hoasapnotvar_gthm & (hoasinduction_p_and_p_prime = (^[X174 : (subst > term > subst > $o), X175 : (term > $o)] : (! [X176 : term] : (((X174 @ id @ X176 @ id)) = ((X175 @ X176)))))) & hoasapinj1_gthm & ! [X177 : d_term] : (d_one = X177) & (axscons <=> ! [X178 : subst] : (((push @ (sub @ one @ X178) @ (comp @ sh @ X178))) = X178)) & (! [X179 : (subst > term > term),X180 : (subst > term > term),X181 : term,X182 : subst] : (~ ! [X183 : subst,X184 : term,X185 : subst] : (((sub @ (X179 @ X185 @ X184) @ X183)) = ((X179 @ (comp @ X185 @ X183) @ (sub @ X184 @ X183)))) | ~ ! [X186 : subst,X187 : subst,X188 : term] : (((sub @ (X180 @ X187 @ X188) @ X186)) = ((X180 @ (comp @ X187 @ X186) @ (sub @ X188 @ X186)))) | (((lam @ (X180 @ sh @ one))) != ((lam @ (X179 @ sh @ one)))) | (((X179 @ X182 @ X181)) = ((X180 @ X182 @ X181)))) <=> hoaslaminj) & (((comp @ (d2subst @ d_id) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & (axidr <=> ! [X189 : subst] : (((comp @ X189 @ id)) = X189)) & termmset_gthm & pushprop_lem2v2_lthm & (! [X190 : term] : ~ ! [X191 : (subst > term > term)] : ~ ! [X192 : subst,X193 : term] : (((X191 @ X192 @ X193)) = ((sub @ X190 @ (push @ X193 @ X192)))) <=> hoasinduction_lem3v2_f) & axassoc & (hoasinduction_lem3aa_lthm <=> ! [X194 : (subst > term > subst > $o),X195 : term] : (~ ! [X196 : (subst > term > term)] : (~ ! [X197 : term,X198 : subst,X199 : subst] : (((X196 @ (comp @ X199 @ X198) @ (sub @ X197 @ X198))) = ((sub @ (X196 @ X199 @ X197) @ X198))) | (X194 @ id @ (lam @ (X196 @ sh @ one)) @ id) | ~ ! [X200 : term] : ((X194 @ id @ (X196 @ id @ X200) @ id) | ~(X194 @ id @ X200 @ id))) | (X194 @ id @ (lam @ (sub @ X195 @ (push @ one @ sh))) @ id) | ~ ! [X201 : term] : ((X194 @ id @ (sub @ X195 @ (push @ X201 @ id)) @ id) | ~(X194 @ id @ X201 @ id)))) & (hoasinduction <=> ! [X202 : term,X203 : (subst > term > subst > $o)] : (~ ! [X204 : term] : (~(var @ (sub @ X204 @ id)) | (X203 @ id @ X204 @ id)) | ~ ! [X205 : (subst > term > term)] : (~ ! [X206 : term] : (~(X203 @ id @ X206 @ id) | (X203 @ id @ (X205 @ id @ X206) @ id)) | (X203 @ id @ (lam @ (X205 @ sh @ one)) @ id) | ~ ! [X207 : subst,X208 : subst,X209 : term] : (((X205 @ (comp @ X208 @ X207) @ (sub @ X209 @ X207))) = ((sub @ (X205 @ X208 @ X209) @ X207)))) | ~ ! [X210 : subst,X211 : subst,X212 : subst,X213 : term] : (~(X203 @ X210 @ X213 @ (comp @ X212 @ X211)) | (X203 @ (comp @ X210 @ X212) @ (sub @ X213 @ X212) @ X211)) | ~ ! [X214 : term,X215 : term] : ((X203 @ id @ (ap @ (sub @ X214 @ id) @ X215) @ id) | ~(X203 @ id @ X215 @ id) | ~(X203 @ id @ X214 @ id)) | ~ ! [X216 : subst,X217 : term,X218 : subst,X219 : subst] : (~(X203 @ (comp @ X216 @ X218) @ (sub @ X217 @ X218) @ X219) | (X203 @ X216 @ X217 @ (comp @ X218 @ X219))) | (X203 @ id @ X202 @ id))) & axvarshift & hoaslamnotap_gthm & (! [X220 : subst,X221 : (term > $o),X222 : term,X223 : (term > $o),X224 : term] : (~(X223 @ X222) | (X221 @ (sub @ X222 @ (push @ X224 @ X220)))) <=> pushprop_lem1) & (! [X225 : term] : (((sub @ X225 @ id)) = X225) <=> termmset) & hoasinduction_lem3a_gthm & (one = ((d2term @ d_one))) & (! [X226 : term,X227 : term] : ((X226 = X227) | (((lam @ X226)) != ((lam @ X227)))) <=> laminj) & (axidl <=> ! [X228 : subst] : (((comp @ id @ X228)) = X228)) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & (((push @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & hoasinduction_lem1_lthm & ((! [X229 : term,X230 : subst] : (((sub @ one @ (push @ X229 @ X230))) = X229) => ! [X231 : subst,X232 : term,X233 : (term > $o),X234 : (term > $o)] : (~ ! [X235 : term] : (((X233 @ (sub @ X235 @ (push @ X232 @ X231)))) = ((X234 @ X235))) | ~(X233 @ X232) | (X234 @ one))) <=> pushprop_lem1v2_lthm) & (! [X236 : (subst > term > subst > $o)] : ~ ! [X237 : (term > $o)] : ~ ! [X238 : term] : (((X236 @ id @ X238 @ id)) = ((X237 @ X238))) <=> hoasinduction_lem0) & (! [X239 : term,X240 : (subst > term > subst > $o)] : (~ ! [X241 : term,X242 : subst,X243 : subst,X244 : subst] : ((X240 @ X242 @ X241 @ (comp @ X244 @ X243)) | ~(X240 @ (comp @ X242 @ X244) @ (sub @ X241 @ X244) @ X243)) | ~ ! [X245 : (subst > term > term)] : (~ ! [X246 : term] : ((X240 @ id @ (X245 @ id @ X246) @ id) | ~(X240 @ id @ X246 @ id)) | (X240 @ id @ (lam @ (X245 @ sh @ one)) @ id) | ~ ! [X247 : subst,X248 : subst,X249 : term] : (((sub @ (X245 @ X247 @ X249) @ X248)) = ((X245 @ (comp @ X247 @ X248) @ (sub @ X249 @ X248))))) | ~ ! [X250 : subst,X251 : subst,X252 : subst,X253 : term] : ((X240 @ (comp @ X252 @ X251) @ (sub @ X253 @ X251) @ X250) | ~(X240 @ X252 @ X253 @ (comp @ X251 @ X250))) | (X240 @ id @ (lam @ X239) @ id) | ~ ! [X254 : term] : ((X240 @ id @ (sub @ X239 @ (push @ X254 @ id)) @ id) | ~(X240 @ id @ X254 @ id))) <=> hoasinduction_lem3) & hoasinduction_lem3v2_gthm & axclos & (! [X255 : term] : ~ ! [X256 : (subst > term > term)] : (((sub @ X255 @ (push @ one @ sh))) != ((X256 @ sh @ one))) <=> hoasinduction_lem3b_lthm) & hoasinduction_lem1v2 & hoaslamnotvar_gthm & pushprop_lem1v2_gthm & axmap & (hoasinduction_lem3v2a <=> ! [X257 : term,X258 : (subst > term > subst > $o),X259 : (term > $o)] : ((X259 @ (lam @ X257)) | ~ ! [X260 : term] : (((X259 @ X260)) = ((X258 @ id @ X260 @ id))) | ~ ! [X261 : term] : (~(X259 @ X261) | (X259 @ (sub @ X257 @ (push @ X261 @ id)))) | ~ ! [X262 : (subst > term > term)] : ((X258 @ id @ (lam @ (X262 @ sh @ one)) @ id) | ~ ! [X263 : subst,X264 : subst,X265 : term] : (((X262 @ (comp @ X264 @ X263) @ (sub @ X265 @ X263))) = ((sub @ (X262 @ X264 @ X265) @ X263))) | ~ ! [X266 : term] : (~(X258 @ id @ X266 @ id) | (X258 @ id @ (X262 @ id @ X266) @ id))))) & pushprop_gthm & (axvarid <=> ! [X267 : term] : (((sub @ X267 @ id)) = X267)) & hoasapinj2_gthm & (! [X268 : term,X269 : subst] : (((sub @ one @ (push @ X268 @ X269))) = X268) <=> axvarcons) & hoasinduction_lem3b_gthm & ((! [X270 : term] : ~ ! [X271 : (subst > term > term)] : ~ ! [X272 : subst,X273 : term] : (((sub @ X270 @ (push @ X273 @ X272))) = ((X271 @ X272 @ X273))) => (! [X274 : term] : (((sub @ X274 @ id)) = X274) => ! [X275 : (term > $o),X276 : (subst > term > subst > $o),X277 : term] : (~ ! [X278 : term] : (((X276 @ id @ X278 @ id)) = ((X275 @ X278))) | ~ ! [X279 : term] : ((X275 @ (sub @ X277 @ (push @ X279 @ id))) | ~(X275 @ X279)) | (X275 @ (lam @ X277)) | ~ ! [X280 : (subst > term > term)] : (~ ! [X281 : subst,X282 : subst,X283 : term] : (((sub @ (X280 @ X281 @ X283) @ X282)) = ((X280 @ (comp @ X281 @ X282) @ (sub @ X283 @ X282)))) | ~ ! [X284 : term] : ((X276 @ id @ (X280 @ id @ X284) @ id) | ~(X276 @ id @ X284 @ id)) | (X276 @ id @ (lam @ (X280 @ sh @ one)) @ id))))) <=> hoasinduction_lem3v2a_lthm) & ((! [X285 : (subst > term > subst > $o)] : ~ ! [X286 : (term > $o)] : ~ ! [X287 : term] : (((X286 @ X287)) = ((X285 @ id @ X287 @ id))) => (! [X288 : (term > $o),X289 : term] : (~ ! [X290 : term] : (~ ! [X291 : term] : ((X288 @ (sub @ X290 @ (push @ X291 @ id))) | ~(X288 @ X291)) | (X288 @ (lam @ X290))) | (X288 @ X289) | ~ ! [X292 : term,X293 : term] : ((X288 @ (ap @ X293 @ X292)) | ~(X288 @ X293) | ~(X288 @ X292)) | ~ ! [X294 : term] : (~(var @ X294) | (X288 @ X294))) => (! [X295 : term] : (((sub @ X295 @ id)) = X295) => (! [X296 : (subst > term > subst > $o),X297 : (term > $o),X298 : term] : (~ ! [X299 : term] : (((X296 @ id @ X299 @ id)) = ((X297 @ X299))) | ~ ! [X300 : term] : ((X297 @ (sub @ X298 @ (push @ X300 @ id))) | ~(X297 @ X300)) | (X297 @ (lam @ X298)) | ~ ! [X301 : (subst > term > term)] : (~ ! [X302 : term] : ((X296 @ id @ (X301 @ id @ X302) @ id) | ~(X296 @ id @ X302 @ id)) | ~ ! [X303 : subst,X304 : subst,X305 : term] : (((X301 @ (comp @ X303 @ X304) @ (sub @ X305 @ X304))) = ((sub @ (X301 @ X303 @ X305) @ X304))) | (X296 @ id @ (lam @ (X301 @ sh @ one)) @ id))) => ! [X306 : term,X307 : (subst > term > subst > $o)] : (~ ! [X308 : (subst > term > term)] : ((X307 @ id @ (lam @ (X308 @ sh @ one)) @ id) | ~ ! [X309 : subst,X310 : subst,X311 : term] : (((X308 @ (comp @ X309 @ X310) @ (sub @ X311 @ X310))) = ((sub @ (X308 @ X309 @ X311) @ X310))) | ~ ! [X312 : term] : (~(X307 @ id @ X312 @ id) | (X307 @ id @ (X308 @ id @ X312) @ id))) | ~ ! [X313 : term,X314 : term] : (~(X307 @ id @ X313 @ id) | (X307 @ id @ (ap @ (sub @ X314 @ id) @ X313) @ id) | ~(X307 @ id @ X314 @ id)) | (X307 @ id @ X306 @ id)))))) <=> hoasinduction_no_psi_cond_lthm) & (! [X315 : term,X316 : term,X317 : (subst > term > subst > $o),X318 : (term > $o)] : (~(X318 @ X316) | (X318 @ (ap @ X315 @ X316)) | ~ ! [X319 : term] : (((X317 @ id @ X319 @ id)) = ((X318 @ X319))) | ~ ! [X320 : term,X321 : term] : (~(X317 @ id @ X321 @ id) | (X317 @ id @ (ap @ (sub @ X320 @ id) @ X321) @ id) | ~(X317 @ id @ X320 @ id)) | ~ ! [X322 : subst,X323 : subst,X324 : term,X325 : subst] : (~(X317 @ X323 @ X324 @ (comp @ X325 @ X322)) | (X317 @ (comp @ X323 @ X325) @ (sub @ X324 @ X325) @ X322)) | ~(X318 @ X315) | ~ ! [X326 : subst,X327 : subst,X328 : subst,X329 : term] : (~(X317 @ (comp @ X327 @ X328) @ (sub @ X329 @ X328) @ X326) | (X317 @ X327 @ X329 @ (comp @ X328 @ X326)))) <=> hoasinduction_lem2v2) & (! [X330 : term,X331 : term,X332 : term,X333 : term] : ((X331 = X333) | (((ap @ (sub @ X332 @ id) @ X333)) != ((ap @ (sub @ X330 @ id) @ X331)))) <=> hoasapinj2) & ((! [X334 : subst] : (((comp @ id @ X334)) = X334) => (! [X335 : subst] : (((comp @ X335 @ id)) = X335) => (! [X336 : subst] : (((comp @ id @ X336)) = X336) & ! [X337 : subst] : (((comp @ X337 @ id)) = X337)))) <=> substmonoid_lthm) & (hoasinduction_lem2 <=> ! [X338 : term,X339 : term,X340 : (subst > term > subst > $o)] : (~ ! [X341 : subst,X342 : term,X343 : subst,X344 : subst] : (~(X340 @ (comp @ X343 @ X344) @ (sub @ X342 @ X344) @ X341) | (X340 @ X343 @ X342 @ (comp @ X344 @ X341))) | ~(X340 @ id @ X339 @ id) | ~ ! [X345 : subst,X346 : subst,X347 : term,X348 : subst] : (~(X340 @ X348 @ X347 @ (comp @ X345 @ X346)) | (X340 @ (comp @ X348 @ X345) @ (sub @ X347 @ X345) @ X346)) | (X340 @ id @ (ap @ X339 @ X338) @ id) | ~ ! [X349 : term,X350 : term] : ((X340 @ id @ (ap @ (sub @ X349 @ id) @ X350) @ id) | ~(X340 @ id @ X349 @ id) | ~(X340 @ id @ X350 @ id)) | ~(X340 @ id @ X338 @ id))) & pushprop_lem2v2 & (hoasinduction_lem3v2_f_lthm <=> ! [X351 : term] : ~ ! [X352 : (subst > term > term)] : ~ ! [X353 : term,X354 : subst] : (((X352 @ X354 @ X353)) = ((sub @ X351 @ (push @ X353 @ X354))))) & axapp & (! [X355 : term,X356 : (subst > term > subst > $o),X357 : (term > $o)] : (~ ! [X358 : subst,X359 : subst,X360 : subst,X361 : term] : (~(X356 @ (comp @ X358 @ X360) @ (sub @ X361 @ X360) @ X359) | (X356 @ X358 @ X361 @ (comp @ X360 @ X359))) | ~ ! [X362 : (subst > term > term)] : (~ ! [X363 : term] : (~(X356 @ id @ X363 @ id) | (X356 @ id @ (X362 @ id @ X363) @ id)) | (X356 @ id @ (lam @ (X362 @ sh @ one)) @ id) | ~ ! [X364 : term,X365 : subst,X366 : subst] : (((sub @ (X362 @ X365 @ X364) @ X366)) = ((X362 @ (comp @ X365 @ X366) @ (sub @ X364 @ X366))))) | ~ ! [X367 : subst,X368 : subst,X369 : term,X370 : subst] : (~(X356 @ X370 @ X369 @ (comp @ X367 @ X368)) | (X356 @ (comp @ X370 @ X367) @ (sub @ X369 @ X367) @ X368)) | (X357 @ (lam @ X355)) | ~ ! [X371 : term] : (~(X357 @ X371) | (X357 @ (sub @ X355 @ (push @ X371 @ id)))) | ~ ! [X372 : term] : (((X357 @ X372)) = ((X356 @ id @ X372 @ id)))) <=> hoasinduction_lem3v2) & (! [X373 : (term > $o),X374 : term,X375 : subst] : ~ ! [X376 : (term > $o)] : ~ ! [X377 : term] : (((X373 @ (sub @ X377 @ (push @ X374 @ X375)))) = ((X376 @ X377))) <=> pushprop_lem0_lthm) & pushprop_lem3v2_lthm & ((^[X378 : subst, X379 : (subst > term > term)] : ((d2term @ d_one))) = hoaslam) & hoasinduction_lem2_lthm & ((! [X380 : term,X381 : (term > $o)] : (~ ! [X382 : term] : (~ ! [X383 : term] : ((X381 @ (sub @ X382 @ (push @ X383 @ id))) | ~(X381 @ X383)) | (X381 @ (lam @ X382))) | ~ ! [X384 : term] : ((X381 @ X384) | ~(var @ X384)) | (X381 @ X380) | ~ ! [X385 : term,X386 : term] : (~(X381 @ X386) | (X381 @ (ap @ X386 @ X385)) | ~(X381 @ X385))) => (! [X387 : term,X388 : (subst > term > subst > $o),X389 : term] : (~(X388 @ id @ X387 @ id) | ~ ! [X390 : term,X391 : term] : (~(X388 @ id @ X390 @ id) | (X388 @ id @ (ap @ (sub @ X391 @ id) @ X390) @ id) | ~(X388 @ id @ X391 @ id)) | ~ ! [X392 : term,X393 : subst,X394 : subst,X395 : subst] : (~(X388 @ (comp @ X393 @ X394) @ (sub @ X392 @ X394) @ X395) | (X388 @ X393 @ X392 @ (comp @ X394 @ X395))) | ~ ! [X396 : subst,X397 : term,X398 : subst,X399 : subst] : ((X388 @ (comp @ X396 @ X399) @ (sub @ X397 @ X399) @ X398) | ~(X388 @ X396 @ X397 @ (comp @ X399 @ X398))) | (X388 @ id @ (ap @ X387 @ X389) @ id) | ~(X388 @ id @ X389 @ id)) => (! [X400 : (subst > term > subst > $o),X401 : term] : (~ ! [X402 : subst,X403 : term,X404 : subst,X405 : subst] : (~(X400 @ X404 @ X403 @ (comp @ X402 @ X405)) | (X400 @ (comp @ X404 @ X402) @ (sub @ X403 @ X402) @ X405)) | ~ ! [X406 : (subst > term > term)] : ((X400 @ id @ (lam @ (X406 @ sh @ one)) @ id) | ~ ! [X407 : term,X408 : subst,X409 : subst] : (((sub @ (X406 @ X408 @ X407) @ X409)) = ((X406 @ (comp @ X408 @ X409) @ (sub @ X407 @ X409)))) | ~ ! [X410 : term] : (~(X400 @ id @ X410 @ id) | (X400 @ id @ (X406 @ id @ X410) @ id))) | ~ ! [X411 : term,X412 : subst,X413 : subst,X414 : subst] : ((X400 @ X412 @ X411 @ (comp @ X414 @ X413)) | ~(X400 @ (comp @ X412 @ X414) @ (sub @ X411 @ X414) @ X413)) | (X400 @ id @ (lam @ X401) @ id) | ~ ! [X415 : term] : (~(X400 @ id @ X415 @ id) | (X400 @ id @ (sub @ X401 @ (push @ X415 @ id)) @ id))) => ! [X416 : (subst > term > subst > $o),X417 : term] : (~ ! [X418 : subst,X419 : subst,X420 : subst,X421 : term] : (~(X416 @ X418 @ X421 @ (comp @ X420 @ X419)) | (X416 @ (comp @ X418 @ X420) @ (sub @ X421 @ X420) @ X419)) | ~ ! [X422 : term,X423 : term] : (~(X416 @ id @ X423 @ id) | (X416 @ id @ (ap @ (sub @ X423 @ id) @ X422) @ id) | ~(X416 @ id @ X422 @ id)) | (X416 @ id @ X417 @ id) | ~ ! [X424 : term,X425 : subst,X426 : subst,X427 : subst] : ((X416 @ X425 @ X424 @ (comp @ X427 @ X426)) | ~(X416 @ (comp @ X425 @ X427) @ (sub @ X424 @ X427) @ X426)) | ~ ! [X428 : term] : (~(var @ (sub @ X428 @ id)) | (X416 @ id @ X428 @ id)) | ~ ! [X429 : (subst > term > term)] : (~ ! [X430 : subst,X431 : subst,X432 : term] : (((X429 @ (comp @ X430 @ X431) @ (sub @ X432 @ X431))) = ((sub @ (X429 @ X430 @ X432) @ X431))) | ~ ! [X433 : term] : ((X416 @ id @ (X429 @ id @ X433) @ id) | ~(X416 @ id @ X433 @ id)) | (X416 @ id @ (lam @ (X429 @ sh @ one)) @ id)))))) <=> hoasinduction_lthm) & ((! [X434 : (subst > term > subst > $o)] : ~ ! [X435 : (term > $o)] : ~ ! [X436 : term] : (((X434 @ id @ X436 @ id)) = ((X435 @ X436))) => (! [X437 : term,X438 : (term > $o)] : ((X438 @ X437) | ~ ! [X439 : term] : (~(var @ X439) | (X438 @ X439)) | ~ ! [X440 : term] : (~ ! [X441 : term] : (~(X438 @ X441) | (X438 @ (sub @ X440 @ (push @ X441 @ id)))) | (X438 @ (lam @ X440))) | ~ ! [X442 : term,X443 : term] : (~(X438 @ X442) | ~(X438 @ X443) | (X438 @ (ap @ X442 @ X443)))) => (! [X444 : term] : (((sub @ X444 @ id)) = X444) => (! [X445 : (term > $o),X446 : (subst > term > subst > $o),X447 : term] : (~ ! [X448 : term] : (((X446 @ id @ X448 @ id)) = ((X445 @ X448))) | ~ ! [X449 : (subst > term > term)] : (~ ! [X450 : term] : (~(X446 @ id @ X450 @ id) | (X446 @ id @ (X449 @ id @ X450) @ id)) | (X446 @ id @ (lam @ (X449 @ sh @ one)) @ id) | ~ ! [X451 : term,X452 : subst,X453 : subst] : (((sub @ (X449 @ X453 @ X451) @ X452)) = ((X449 @ (comp @ X453 @ X452) @ (sub @ X451 @ X452))))) | (X445 @ (lam @ X447)) | ~ ! [X454 : term] : (~(X445 @ X454) | (X445 @ (sub @ X447 @ (push @ X454 @ id))))) => ! [X455 : (subst > term > subst > $o),X456 : term] : (~ ! [X457 : subst,X458 : term,X459 : subst,X460 : subst] : (~(X455 @ X457 @ X458 @ (comp @ X460 @ X459)) | (X455 @ (comp @ X457 @ X460) @ (sub @ X458 @ X460) @ X459)) | ~ ! [X461 : term] : (~(var @ (sub @ X461 @ id)) | (X455 @ id @ X461 @ id)) | ~ ! [X462 : (subst > term > term)] : (~ ! [X463 : subst,X464 : subst,X465 : term] : (((X462 @ (comp @ X463 @ X464) @ (sub @ X465 @ X464))) = ((sub @ (X462 @ X463 @ X465) @ X464))) | (X455 @ id @ (lam @ (X462 @ sh @ one)) @ id) | ~ ! [X466 : term] : (~(X455 @ id @ X466 @ id) | (X455 @ id @ (X462 @ id @ X466) @ id))) | ~ ! [X467 : term,X468 : term] : (~(X455 @ id @ X468 @ id) | ~(X455 @ id @ X467 @ id) | (X455 @ id @ (ap @ (sub @ X467 @ id) @ X468) @ id)) | (X455 @ id @ X456 @ id) | ~ ! [X469 : term,X470 : subst,X471 : subst,X472 : subst] : ((X455 @ X471 @ X469 @ (comp @ X470 @ X472)) | ~(X455 @ (comp @ X471 @ X470) @ (sub @ X469 @ X470) @ X472))))))) <=> hoasinduction_lthm_3) & (id = ((d2subst @ d_id))) & ((! [X473 : term,X474 : subst] : (((sub @ one @ (push @ X473 @ X474))) = X473) => (! [X475 : subst,X476 : term] : (((comp @ sh @ (push @ X476 @ X475))) = X475) => (! [X477 : term,X478 : term] : ((X477 = X478) | (((lam @ X478)) != ((lam @ X477)))) => ! [X479 : term,X480 : (subst > term > term),X481 : subst,X482 : (subst > term > term)] : ((((X482 @ X481 @ X479)) = ((X480 @ X481 @ X479))) | (((lam @ (X482 @ sh @ one))) != ((lam @ (X480 @ sh @ one)))) | ~ ! [X483 : subst,X484 : subst,X485 : term] : (((X482 @ (comp @ X483 @ X484) @ (sub @ X485 @ X484))) = ((sub @ (X482 @ X483 @ X485) @ X484))) | ~ ! [X486 : subst,X487 : term,X488 : subst] : (((X480 @ (comp @ X488 @ X486) @ (sub @ X487 @ X486))) = ((sub @ (X480 @ X488 @ X487) @ X486))))))) <=> hoaslaminj_lthm) & ((! [X489 : term] : (((sub @ X489 @ id)) = X489) => ! [X490 : term,X491 : (subst > term > subst > $o),X492 : (term > $o)] : (~ ! [X493 : (subst > term > term)] : (~ ! [X494 : subst,X495 : subst,X496 : term] : (((X493 @ (comp @ X495 @ X494) @ (sub @ X496 @ X494))) = ((sub @ (X493 @ X495 @ X496) @ X494))) | ~ ! [X497 : term] : (~(X491 @ id @ X497 @ id) | (X491 @ id @ (X493 @ id @ X497) @ id)) | (X491 @ id @ (lam @ (X493 @ sh @ one)) @ id)) | ~ ! [X498 : term] : (~(X492 @ X498) | (X492 @ (sub @ X490 @ (push @ X498 @ id)))) | ~ ! [X499 : term] : (((X492 @ X499)) = ((X491 @ id @ X499 @ id))) | ~ ! [X500 : subst,X501 : subst,X502 : subst,X503 : term] : ((X491 @ (comp @ X502 @ X501) @ (sub @ X503 @ X501) @ X500) | ~(X491 @ X502 @ X503 @ (comp @ X501 @ X500))) | (X492 @ (lam @ X490)) | ~ ! [X504 : term,X505 : subst,X506 : subst,X507 : subst] : (~(X491 @ (comp @ X505 @ X507) @ (sub @ X504 @ X507) @ X506) | (X491 @ X505 @ X504 @ (comp @ X507 @ X506))))) <=> hoasinduction_lem3v2_lthm) & pushprop_lem3v2 & ((! [X508 : term] : (((sub @ X508 @ id)) = X508) => (! [X509 : term,X510 : subst,X511 : (term > $o)] : (~ ! [X512 : term,X513 : term] : (~(X511 @ X513) | (X511 @ (ap @ X513 @ X512)) | ~(X511 @ X512)) | ~ ! [X514 : term] : (~(var @ X514) | (X511 @ (sub @ X514 @ X510))) | ~ ! [X515 : term] : ((X511 @ (lam @ X515)) | ~ ! [X516 : term] : ((X511 @ (sub @ X515 @ (push @ X516 @ id))) | ~(X511 @ X516))) | (X511 @ (sub @ X509 @ X510))) => ! [X517 : term,X518 : (term > $o)] : (~ ! [X519 : term] : ((X518 @ (lam @ X519)) | ~ ! [X520 : term] : (~(X518 @ X520) | (X518 @ (sub @ X519 @ (push @ X520 @ id))))) | ~ ! [X521 : term] : ((X518 @ X521) | ~(var @ X521)) | (X518 @ X517) | ~ ! [X522 : term,X523 : term] : (~(X518 @ X522) | (X518 @ (ap @ X522 @ X523)) | ~(X518 @ X523))))) <=> induction2_lthm) & (! [X524 : term,X525 : (subst > term > term),X526 : term] : ((((ap @ (sub @ X526 @ id) @ X524)) != ((lam @ (X525 @ sh @ one)))) | ~ ! [X527 : term,X528 : subst,X529 : subst] : (((sub @ (X525 @ X529 @ X527) @ X528)) = ((X525 @ (comp @ X529 @ X528) @ (sub @ X527 @ X528))))) <=> hoaslamnotap) & (substmonoid <=> (! [X530 : subst] : (((comp @ X530 @ id)) = X530) & ! [X531 : subst] : (((comp @ id @ X531)) = X531))) & (hoasapinj1_lthm <=> (! [X532 : term] : (((sub @ X532 @ id)) = X532) => (! [X533 : term,X534 : term,X535 : term,X536 : term] : ((X535 = X536) | (((ap @ X536 @ X534)) != ((ap @ X535 @ X533)))) => ! [X537 : term,X538 : term,X539 : term,X540 : term] : ((X537 = X539) | (((ap @ (sub @ X539 @ id) @ X540)) != ((ap @ (sub @ X537 @ id) @ X538))))))) & lamnotvar & (((lam @ (d2term @ d_one))) = ((d2term @ d_one))) & (! [X541 : (subst > term > subst > $o),X542 : term] : ((X541 @ id @ X542 @ id) | ~ ! [X543 : (subst > term > term)] : ((X541 @ id @ (lam @ (X543 @ sh @ one)) @ id) | ~ ! [X544 : term] : ((X541 @ id @ (X543 @ id @ X544) @ id) | ~(X541 @ id @ X544 @ id)) | ~ ! [X545 : term,X546 : subst,X547 : subst] : (((X543 @ (comp @ X546 @ X547) @ (sub @ X545 @ X547))) = ((sub @ (X543 @ X546 @ X545) @ X547)))) | ~ ! [X548 : term,X549 : term] : ((X541 @ id @ (ap @ (sub @ X548 @ id) @ X549) @ id) | ~(X541 @ id @ X549 @ id) | ~(X541 @ id @ X548 @ id))) <=> hoasinduction_no_psi_cond)),
  inference(rectify,[],[f3])).
thf(f5,plain,(
  (ulamvarsh = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lthm = $true) & (pushprop_lem1_gthm = $true) & (! [X0 : (subst > term > subst > $o),X1 : term] : (($true = ((X0 @ id @ (lam @ X1) @ id))) | ~ ! [X2 : (subst > term > term)] : ((((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true) | ~ ! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) | ~ ! [X6 : term] : (~ (((X0 @ id @ X6 @ id)) = $true) | ($true = ((X0 @ id @ (X2 @ id @ X6) @ id))))) | ~ ! [X7 : term] : (($true = ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id))) | ~ (((X0 @ id @ X7 @ id)) = $true))) <=> (hoasinduction_lem3a = $true)) & (apnotvar = $true) & (hoasinduction_lem3_gthm = $true) & ((induction2lem_lthm = $true) <=> (! [X9 : subst,X8 : term] : (((sub @ one @ (push @ X8 @ X9))) = X8) => (! [X10 : term,X11 : subst] : (((comp @ sh @ (push @ X10 @ X11))) = X11) => (! [X12 : subst] : (((comp @ X12 @ id)) = X12) => (! [X13 : term,X14 : (term > $o)] : (~ ! [X15 : term] : (($true = ((X14 @ X15))) | ~ (((var @ X15)) = $true)) | ~ ! [X16 : term] : (~ (((X14 @ X16)) = $true) | (((X14 @ (lam @ X16))) = $true)) | ($true = ((X14 @ X13))) | ~ ! [X17 : term,X18 : term] : (~ (((X14 @ X17)) = $true) | ($true = ((X14 @ (ap @ X18 @ X17)))) | ~ (((X14 @ X18)) = $true))) => ! [X19 : subst,X20 : term,X21 : (term > $o)] : (~ ! [X22 : term,X23 : term] : ((((X21 @ (ap @ X23 @ X22))) = $true) | ~ ($true = ((X21 @ X22))) | ~ ($true = ((X21 @ X23)))) | (((X21 @ (sub @ X20 @ X19))) = $true) | ~ ! [X24 : term] : (~ ($true = ((var @ X24))) | ($true = ((X21 @ (sub @ X24 @ X19))))) | ~ ! [X25 : term] : (($true = ((X21 @ (lam @ X25)))) | ~ ! [X26 : term] : (~ ($true = ((X21 @ X26))) | (((X21 @ (sub @ X25 @ (push @ X26 @ id)))) = $true))))))))) & ((pushprop_lem1v2 = $true) <=> ! [X27 : subst,X28 : (term > $o),X29 : (term > $o),X30 : term] : ((((X28 @ one)) = $true) | ~ ($true = ((X29 @ X30))) | ~ ! [X31 : term] : (((X28 @ X31)) = ((X29 @ (sub @ X31 @ (push @ X30 @ X27))))))) & (hoasapnotvar = $true) & (hoasinduction_lem2v2_gthm = $true) & ~ (lamnotap = $true) & (((d2subst @ d_id)) = sh) & ((termmset_lthm = $true) <=> (! [X32 : term] : (((sub @ X32 @ id)) = X32) => ! [X33 : term] : (((sub @ X33 @ id)) = X33))) & ((pushprop_lem0 = $true) <=> ! [X35 : (term > $o),X36 : term,X34 : subst] : ~ ! [X37 : (term > $o)] : ~ ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & (axabs = $true) & (pushprop_lem0_gthm = $true) & (pushprop = $true) & (hoasinduction_lem1_gthm = $true) & (hoasinduction_lem1 = $true) & (hoasinduction_gthm = $true) & (hoaslamnotvar_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((hoasinduction_lem3_lthm = $true) <=> (! [X39 : term] : (((sub @ X39 @ id)) = X39) => (! [X40 : (subst > term > subst > $o),X41 : term] : (($true = ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id))) | ~ ! [X42 : term] : ((((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true) | ~ ($true = ((X40 @ id @ X42 @ id)))) | ~ ! [X43 : (subst > term > term)] : (~ ! [X44 : term] : (~ ($true = ((X40 @ id @ X44 @ id))) | ($true = ((X40 @ id @ (X43 @ id @ X44) @ id)))) | ~ ! [X47 : subst,X45 : term,X46 : subst] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) = ((sub @ (X43 @ X47 @ X45) @ X46))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id))))) => ! [X48 : term,X49 : (subst > term > subst > $o)] : (~ ! [X50 : term] : (($true = ((X49 @ id @ (sub @ X48 @ (push @ X50 @ id)) @ id))) | ~ (((X49 @ id @ X50 @ id)) = $true)) | ($true = ((X49 @ id @ (lam @ X48) @ id))) | ~ ! [X51 : term,X52 : subst,X53 : subst,X54 : subst] : (($true = ((X49 @ X53 @ X51 @ (comp @ X52 @ X54)))) | ~ (((X49 @ (comp @ X53 @ X52) @ (sub @ X51 @ X52) @ X54)) = $true)) | ~ ! [X55 : (subst > term > term)] : (~ ! [X58 : subst,X56 : term,X57 : subst] : (((X55 @ (comp @ X58 @ X57) @ (sub @ X56 @ X57))) = ((sub @ (X55 @ X58 @ X56) @ X57))) | (((X49 @ id @ (lam @ (X55 @ sh @ one)) @ id)) = $true) | ~ ! [X59 : term] : (~ (((X49 @ id @ X59 @ id)) = $true) | ($true = ((X49 @ id @ (X55 @ id @ X59) @ id))))) | ~ ! [X60 : subst,X61 : subst,X62 : term,X63 : subst] : (($true = ((X49 @ (comp @ X63 @ X61) @ (sub @ X62 @ X61) @ X60))) | ~ ($true = ((X49 @ X63 @ X62 @ (comp @ X61 @ X60))))))))) & ((hoasapinj2_lthm = $true) <=> (! [X64 : term,X65 : term,X66 : term,X67 : term] : ((X64 = X66) | (((ap @ X67 @ X66)) != ((ap @ X65 @ X64)))) => ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))))) & (hoasapnotvar_lthm = $true) & ~ (((var @ (d2term @ d_one))) = $true) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((induction2lem = $true) <=> ! [X72 : subst,X73 : (term > $o),X74 : term] : (~ ! [X75 : term] : (~ (((var @ X75)) = $true) | (((X73 @ (sub @ X75 @ X72))) = $true)) | ~ ! [X76 : term] : (($true = ((X73 @ (lam @ X76)))) | ~ ! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ~ ($true = ((X73 @ X77))))) | ($true = ((X73 @ (sub @ X74 @ X72)))) | ~ ! [X78 : term,X79 : term] : (~ ($true = ((X73 @ X79))) | ~ (((X73 @ X78)) = $true) | (((X73 @ (ap @ X78 @ X79))) = $true)))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X80 : (subst > term > subst > $o)] : ~ ! [X81 : (term > $o)] : ~ ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82)))) & ((hoasinduction_lem3aa = $true) <=> ! [X83 : (subst > term > subst > $o),X84 : term] : (~ ! [X85 : (subst > term > term)] : (~ ! [X86 : term] : (~ (((X83 @ id @ X86 @ id)) = $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) | ($true = ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) | ~ ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id))) | ~ ! [X90 : term] : (~ (((X83 @ id @ X90 @ id)) = $true) | ($true = ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))))) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) = ((d2subst @ X91))) => (X91 = X92)) & (pushprop_lthm_orig = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (hoaslaminj_gthm = $true) & (hoaslamnotvar = $true) & ((induction = $true) <=> ! [X93 : (term > $o),X94 : term] : (~ ! [X95 : term,X96 : term] : (($true = ((X93 @ (ap @ X95 @ X96)))) | ~ ($true = ((X93 @ X95))) | ~ ($true = ((X93 @ X96)))) | ~ ! [X97 : term] : (~ (((var @ X97)) = $true) | ($true = ((X93 @ X97)))) | ~ ! [X98 : term] : (($true = ((X93 @ (lam @ X98)))) | ~ ($true = ((X93 @ X98)))) | (((X93 @ X94)) = $true))) & (! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) <=> (axshiftcons = $true)) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X101 : term] : (((sub @ X101 @ id)) = X101) => (! [X102 : (subst > term > subst > $o),X103 : term] : (~ ! [X104 : term] : (~ (((X102 @ id @ X104 @ id)) = $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id)))) | ($true = ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) | ~ ! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ~ ! [X106 : term] : (~ (((X102 @ id @ X106 @ id)) = $true) | (((X102 @ id @ (X105 @ id @ X106) @ id)) = $true)) | ~ ! [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) = ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)))))) => ! [X110 : term,X111 : (subst > term > subst > $o)] : (~ ! [X112 : term] : (($true = ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) | ~ ($true = ((X111 @ id @ X112 @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ~ ! [X113 : (subst > term > term)] : (~ ! [X114 : term] : (~ (((X111 @ id @ X114 @ id)) = $true) | ($true = ((X111 @ id @ (X113 @ id @ X114) @ id)))) | ~ ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))) | ($true = ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id)))))))) & ! [X118 : d_subst] : (d_id = X118) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & ~ (ulamvar1 = $true) & (! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) <=> (hoasapinj1 = $true)) & (ulamvarind = $true) & ((apinj1 = $true) <=> ! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125))))) & (! [X129 : (subst > term > subst > $o),X130 : term] : (~ ! [X131 : term] : ((((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) = $true) | ~ ($true = ((X129 @ id @ X131 @ id)))) | ~ ! [X132 : term,X133 : (subst > term > term)] : (~ ! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) | (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) = $true) | ~ ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139))) | ~ ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | ~ (((X129 @ id @ X140 @ id)) = $true))) | (((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true)) <=> (hoasinduction_lem3aaa = $true)) & ! [X142 : d_term,X141 : d_term] : ((((d2term @ X141)) = ((d2term @ X142))) => (X141 = X142)) & (pushprop_lem2v2_gthm = $true) & (! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) <=> (apinj2 = $true)) & (induction2_gthm = $true) & ((pushprop_lem1_lthm = $true) <=> (! [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) = X147) => (! [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) = X150) => ! [X151 : subst,X152 : term,X153 : (term > $o),X154 : term,X155 : (term > $o)] : (~ (((X153 @ X152)) = $true) | (((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true))))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((shinj = $true) <=> ! [X161 : term,X162 : term] : ((((sub @ X162 @ sh)) != ((sub @ X161 @ sh))) | (X161 = X162))) & (substmonoid_gthm = $true) & (induction2lem_gthm = $true) & ((induction2 = $true) <=> ! [X163 : term,X164 : (term > $o)] : (~ ! [X165 : term,X166 : term] : (($true = ((X164 @ (ap @ X165 @ X166)))) | ~ (((X164 @ X166)) = $true) | ~ ($true = ((X164 @ X165)))) | ($true = ((X164 @ X163))) | ~ ! [X167 : term] : (~ ($true = ((var @ X167))) | ($true = ((X164 @ X167)))) | ~ ! [X168 : term] : (~ ! [X169 : term] : (($true = ((X164 @ (sub @ X168 @ (push @ X169 @ id))))) | ~ ($true = ((X164 @ X169)))) | ($true = ((X164 @ (lam @ X168))))))) & ((hoasinduction_lem3b = $true) <=> ! [X170 : term] : ~ ! [X171 : (subst > term > term)] : (((sub @ X170 @ (push @ one @ sh))) != ((X171 @ sh @ one)))) & ! [X172 : subst] : ? [X173 : d_subst] : (((d2subst @ X173)) = X172) & (hoasapnotvar_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (hoasapinj1_gthm = $true) & ! [X177 : d_term] : (d_one = X177) & ((axscons = $true) <=> ! [X178 : subst] : (((push @ (sub @ one @ X178) @ (comp @ sh @ X178))) = X178)) & (! [X179 : (subst > term > term),X180 : (subst > term > term),X181 : term,X182 : subst] : (~ ! [X183 : subst,X184 : term,X185 : subst] : (((sub @ (X179 @ X185 @ X184) @ X183)) = ((X179 @ (comp @ X185 @ X183) @ (sub @ X184 @ X183)))) | ~ ! [X186 : subst,X187 : subst,X188 : term] : (((sub @ (X180 @ X187 @ X188) @ X186)) = ((X180 @ (comp @ X187 @ X186) @ (sub @ X188 @ X186)))) | (((lam @ (X180 @ sh @ one))) != ((lam @ (X179 @ sh @ one)))) | (((X179 @ X182 @ X181)) = ((X180 @ X182 @ X181)))) <=> (hoaslaminj = $true)) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & ((axidr = $true) <=> ! [X189 : subst] : (((comp @ X189 @ id)) = X189)) & (termmset_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (! [X190 : term] : ~ ! [X191 : (subst > term > term)] : ~ ! [X192 : subst,X193 : term] : (((X191 @ X192 @ X193)) = ((sub @ X190 @ (push @ X193 @ X192)))) <=> (hoasinduction_lem3v2_f = $true)) & (axassoc = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X194 : (subst > term > subst > $o),X195 : term] : (~ ! [X196 : (subst > term > term)] : (~ ! [X197 : term,X198 : subst,X199 : subst] : (((X196 @ (comp @ X199 @ X198) @ (sub @ X197 @ X198))) = ((sub @ (X196 @ X199 @ X197) @ X198))) | (((X194 @ id @ (lam @ (X196 @ sh @ one)) @ id)) = $true) | ~ ! [X200 : term] : ((((X194 @ id @ (X196 @ id @ X200) @ id)) = $true) | ~ ($true = ((X194 @ id @ X200 @ id))))) | ($true = ((X194 @ id @ (lam @ (sub @ X195 @ (push @ one @ sh))) @ id))) | ~ ! [X201 : term] : (($true = ((X194 @ id @ (sub @ X195 @ (push @ X201 @ id)) @ id))) | ~ ($true = ((X194 @ id @ X201 @ id)))))) & ((hoasinduction = $true) <=> ! [X202 : term,X203 : (subst > term > subst > $o)] : (~ ! [X204 : term] : (~ ($true = ((var @ (sub @ X204 @ id)))) | ($true = ((X203 @ id @ X204 @ id)))) | ~ ! [X205 : (subst > term > term)] : (~ ! [X206 : term] : (~ (((X203 @ id @ X206 @ id)) = $true) | ($true = ((X203 @ id @ (X205 @ id @ X206) @ id)))) | ($true = ((X203 @ id @ (lam @ (X205 @ sh @ one)) @ id))) | ~ ! [X207 : subst,X208 : subst,X209 : term] : (((X205 @ (comp @ X208 @ X207) @ (sub @ X209 @ X207))) = ((sub @ (X205 @ X208 @ X209) @ X207)))) | ~ ! [X210 : subst,X211 : subst,X212 : subst,X213 : term] : (~ (((X203 @ X210 @ X213 @ (comp @ X212 @ X211))) = $true) | (((X203 @ (comp @ X210 @ X212) @ (sub @ X213 @ X212) @ X211)) = $true)) | ~ ! [X214 : term,X215 : term] : (($true = ((X203 @ id @ (ap @ (sub @ X214 @ id) @ X215) @ id))) | ~ ($true = ((X203 @ id @ X215 @ id))) | ~ ($true = ((X203 @ id @ X214 @ id)))) | ~ ! [X216 : subst,X217 : term,X218 : subst,X219 : subst] : (~ (((X203 @ (comp @ X216 @ X218) @ (sub @ X217 @ X218) @ X219)) = $true) | (((X203 @ X216 @ X217 @ (comp @ X218 @ X219))) = $true)) | (((X203 @ id @ X202 @ id)) = $true))) & (axvarshift = $true) & (hoaslamnotap_gthm = $true) & (! [X220 : subst,X221 : (term > $o),X222 : term,X223 : (term > $o),X224 : term] : (~ ($true = ((X223 @ X222))) | ($true = ((X221 @ (sub @ X222 @ (push @ X224 @ X220)))))) <=> (pushprop_lem1 = $true)) & (! [X225 : term] : (((sub @ X225 @ id)) = X225) <=> (termmset = $true)) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = one) & (! [X226 : term,X227 : term] : ((X226 = X227) | (((lam @ X226)) != ((lam @ X227)))) <=> (laminj = $true)) & ((axidl = $true) <=> ! [X228 : subst] : (((comp @ id @ X228)) = X228)) & ~ (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) = $true) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasinduction_lem1_lthm = $true) & ((! [X229 : term,X230 : subst] : (((sub @ one @ (push @ X229 @ X230))) = X229) => ! [X231 : subst,X232 : term,X233 : (term > $o),X234 : (term > $o)] : (~ ! [X235 : term] : (((X233 @ (sub @ X235 @ (push @ X232 @ X231)))) = ((X234 @ X235))) | ~ ($true = ((X233 @ X232))) | ($true = ((X234 @ one))))) <=> (pushprop_lem1v2_lthm = $true)) & (! [X236 : (subst > term > subst > $o)] : ~ ! [X237 : (term > $o)] : ~ ! [X238 : term] : (((X236 @ id @ X238 @ id)) = ((X237 @ X238))) <=> (hoasinduction_lem0 = $true)) & (! [X239 : term,X240 : (subst > term > subst > $o)] : (~ ! [X241 : term,X242 : subst,X243 : subst,X244 : subst] : ((((X240 @ X242 @ X241 @ (comp @ X244 @ X243))) = $true) | ~ ($true = ((X240 @ (comp @ X242 @ X244) @ (sub @ X241 @ X244) @ X243)))) | ~ ! [X245 : (subst > term > term)] : (~ ! [X246 : term] : (($true = ((X240 @ id @ (X245 @ id @ X246) @ id))) | ~ (((X240 @ id @ X246 @ id)) = $true)) | ($true = ((X240 @ id @ (lam @ (X245 @ sh @ one)) @ id))) | ~ ! [X247 : subst,X248 : subst,X249 : term] : (((sub @ (X245 @ X247 @ X249) @ X248)) = ((X245 @ (comp @ X247 @ X248) @ (sub @ X249 @ X248))))) | ~ ! [X250 : subst,X251 : subst,X252 : subst,X253 : term] : (($true = ((X240 @ (comp @ X252 @ X251) @ (sub @ X253 @ X251) @ X250))) | ~ ($true = ((X240 @ X252 @ X253 @ (comp @ X251 @ X250))))) | ($true = ((X240 @ id @ (lam @ X239) @ id))) | ~ ! [X254 : term] : ((((X240 @ id @ (sub @ X239 @ (push @ X254 @ id)) @ id)) = $true) | ~ ($true = ((X240 @ id @ X254 @ id))))) <=> (hoasinduction_lem3 = $true)) & (hoasinduction_lem3v2_gthm = $true) & (axclos = $true) & (! [X255 : term] : ~ ! [X256 : (subst > term > term)] : (((sub @ X255 @ (push @ one @ sh))) != ((X256 @ sh @ one))) <=> (hoasinduction_lem3b_lthm = $true)) & (hoasinduction_lem1v2 = $true) & (hoaslamnotvar_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (axmap = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X257 : term,X258 : (subst > term > subst > $o),X259 : (term > $o)] : ((((X259 @ (lam @ X257))) = $true) | ~ ! [X260 : term] : (((X259 @ X260)) = ((X258 @ id @ X260 @ id))) | ~ ! [X261 : term] : (~ (((X259 @ X261)) = $true) | ($true = ((X259 @ (sub @ X257 @ (push @ X261 @ id)))))) | ~ ! [X262 : (subst > term > term)] : ((((X258 @ id @ (lam @ (X262 @ sh @ one)) @ id)) = $true) | ~ ! [X263 : subst,X264 : subst,X265 : term] : (((X262 @ (comp @ X264 @ X263) @ (sub @ X265 @ X263))) = ((sub @ (X262 @ X264 @ X265) @ X263))) | ~ ! [X266 : term] : (~ ($true = ((X258 @ id @ X266 @ id))) | (((X258 @ id @ (X262 @ id @ X266) @ id)) = $true))))) & (pushprop_gthm = $true) & ((axvarid = $true) <=> ! [X267 : term] : (((sub @ X267 @ id)) = X267)) & (hoasapinj2_gthm = $true) & (! [X268 : term,X269 : subst] : (((sub @ one @ (push @ X268 @ X269))) = X268) <=> (axvarcons = $true)) & (hoasinduction_lem3b_gthm = $true) & ((! [X270 : term] : ~ ! [X271 : (subst > term > term)] : ~ ! [X272 : subst,X273 : term] : (((sub @ X270 @ (push @ X273 @ X272))) = ((X271 @ X272 @ X273))) => (! [X274 : term] : (((sub @ X274 @ id)) = X274) => ! [X275 : (term > $o),X276 : (subst > term > subst > $o),X277 : term] : (~ ! [X278 : term] : (((X276 @ id @ X278 @ id)) = ((X275 @ X278))) | ~ ! [X279 : term] : (($true = ((X275 @ (sub @ X277 @ (push @ X279 @ id))))) | ~ ($true = ((X275 @ X279)))) | ($true = ((X275 @ (lam @ X277)))) | ~ ! [X280 : (subst > term > term)] : (~ ! [X281 : subst,X282 : subst,X283 : term] : (((sub @ (X280 @ X281 @ X283) @ X282)) = ((X280 @ (comp @ X281 @ X282) @ (sub @ X283 @ X282)))) | ~ ! [X284 : term] : ((((X276 @ id @ (X280 @ id @ X284) @ id)) = $true) | ~ (((X276 @ id @ X284 @ id)) = $true)) | ($true = ((X276 @ id @ (lam @ (X280 @ sh @ one)) @ id))))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ((! [X285 : (subst > term > subst > $o)] : ~ ! [X286 : (term > $o)] : ~ ! [X287 : term] : (((X286 @ X287)) = ((X285 @ id @ X287 @ id))) => (! [X288 : (term > $o),X289 : term] : (~ ! [X290 : term] : (~ ! [X291 : term] : ((((X288 @ (sub @ X290 @ (push @ X291 @ id)))) = $true) | ~ (((X288 @ X291)) = $true)) | (((X288 @ (lam @ X290))) = $true)) | ($true = ((X288 @ X289))) | ~ ! [X292 : term,X293 : term] : (($true = ((X288 @ (ap @ X293 @ X292)))) | ~ (((X288 @ X293)) = $true) | ~ ($true = ((X288 @ X292)))) | ~ ! [X294 : term] : (~ ($true = ((var @ X294))) | ($true = ((X288 @ X294))))) => (! [X295 : term] : (((sub @ X295 @ id)) = X295) => (! [X296 : (subst > term > subst > $o),X297 : (term > $o),X298 : term] : (~ ! [X299 : term] : (((X296 @ id @ X299 @ id)) = ((X297 @ X299))) | ~ ! [X300 : term] : (($true = ((X297 @ (sub @ X298 @ (push @ X300 @ id))))) | ~ ($true = ((X297 @ X300)))) | (((X297 @ (lam @ X298))) = $true) | ~ ! [X301 : (subst > term > term)] : (~ ! [X302 : term] : ((((X296 @ id @ (X301 @ id @ X302) @ id)) = $true) | ~ (((X296 @ id @ X302 @ id)) = $true)) | ~ ! [X303 : subst,X304 : subst,X305 : term] : (((X301 @ (comp @ X303 @ X304) @ (sub @ X305 @ X304))) = ((sub @ (X301 @ X303 @ X305) @ X304))) | ($true = ((X296 @ id @ (lam @ (X301 @ sh @ one)) @ id))))) => ! [X306 : term,X307 : (subst > term > subst > $o)] : (~ ! [X308 : (subst > term > term)] : (($true = ((X307 @ id @ (lam @ (X308 @ sh @ one)) @ id))) | ~ ! [X309 : subst,X310 : subst,X311 : term] : (((X308 @ (comp @ X309 @ X310) @ (sub @ X311 @ X310))) = ((sub @ (X308 @ X309 @ X311) @ X310))) | ~ ! [X312 : term] : (~ ($true = ((X307 @ id @ X312 @ id))) | (((X307 @ id @ (X308 @ id @ X312) @ id)) = $true))) | ~ ! [X313 : term,X314 : term] : (~ (((X307 @ id @ X313 @ id)) = $true) | ($true = ((X307 @ id @ (ap @ (sub @ X314 @ id) @ X313) @ id))) | ~ (((X307 @ id @ X314 @ id)) = $true)) | ($true = ((X307 @ id @ X306 @ id)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X315 : term,X316 : term,X317 : (subst > term > subst > $o),X318 : (term > $o)] : (~ (((X318 @ X316)) = $true) | ($true = ((X318 @ (ap @ X315 @ X316)))) | ~ ! [X319 : term] : (((X317 @ id @ X319 @ id)) = ((X318 @ X319))) | ~ ! [X320 : term,X321 : term] : (~ (((X317 @ id @ X321 @ id)) = $true) | (((X317 @ id @ (ap @ (sub @ X320 @ id) @ X321) @ id)) = $true) | ~ (((X317 @ id @ X320 @ id)) = $true)) | ~ ! [X322 : subst,X323 : subst,X324 : term,X325 : subst] : (~ (((X317 @ X323 @ X324 @ (comp @ X325 @ X322))) = $true) | ($true = ((X317 @ (comp @ X323 @ X325) @ (sub @ X324 @ X325) @ X322)))) | ~ ($true = ((X318 @ X315))) | ~ ! [X326 : subst,X327 : subst,X328 : subst,X329 : term] : (~ ($true = ((X317 @ (comp @ X327 @ X328) @ (sub @ X329 @ X328) @ X326))) | ($true = ((X317 @ X327 @ X329 @ (comp @ X328 @ X326)))))) <=> (hoasinduction_lem2v2 = $true)) & (! [X330 : term,X331 : term,X332 : term,X333 : term] : ((X331 = X333) | (((ap @ (sub @ X332 @ id) @ X333)) != ((ap @ (sub @ X330 @ id) @ X331)))) <=> (hoasapinj2 = $true)) & ((! [X334 : subst] : (((comp @ id @ X334)) = X334) => (! [X335 : subst] : (((comp @ X335 @ id)) = X335) => (! [X336 : subst] : (((comp @ id @ X336)) = X336) & ! [X337 : subst] : (((comp @ X337 @ id)) = X337)))) <=> (substmonoid_lthm = $true)) & ((hoasinduction_lem2 = $true) <=> ! [X338 : term,X339 : term,X340 : (subst > term > subst > $o)] : (~ ! [X341 : subst,X342 : term,X343 : subst,X344 : subst] : (~ ($true = ((X340 @ (comp @ X343 @ X344) @ (sub @ X342 @ X344) @ X341))) | ($true = ((X340 @ X343 @ X342 @ (comp @ X344 @ X341))))) | ~ ($true = ((X340 @ id @ X339 @ id))) | ~ ! [X345 : subst,X346 : subst,X347 : term,X348 : subst] : (~ ($true = ((X340 @ X348 @ X347 @ (comp @ X345 @ X346)))) | ($true = ((X340 @ (comp @ X348 @ X345) @ (sub @ X347 @ X345) @ X346)))) | ($true = ((X340 @ id @ (ap @ X339 @ X338) @ id))) | ~ ! [X349 : term,X350 : term] : (($true = ((X340 @ id @ (ap @ (sub @ X349 @ id) @ X350) @ id))) | ~ (((X340 @ id @ X349 @ id)) = $true) | ~ ($true = ((X340 @ id @ X350 @ id)))) | ~ (((X340 @ id @ X338 @ id)) = $true))) & (pushprop_lem2v2 = $true) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X351 : term] : ~ ! [X352 : (subst > term > term)] : ~ ! [X353 : term,X354 : subst] : (((X352 @ X354 @ X353)) = ((sub @ X351 @ (push @ X353 @ X354))))) & (axapp = $true) & (! [X355 : term,X356 : (subst > term > subst > $o),X357 : (term > $o)] : (~ ! [X358 : subst,X359 : subst,X360 : subst,X361 : term] : (~ (((X356 @ (comp @ X358 @ X360) @ (sub @ X361 @ X360) @ X359)) = $true) | (((X356 @ X358 @ X361 @ (comp @ X360 @ X359))) = $true)) | ~ ! [X362 : (subst > term > term)] : (~ ! [X363 : term] : (~ ($true = ((X356 @ id @ X363 @ id))) | (((X356 @ id @ (X362 @ id @ X363) @ id)) = $true)) | ($true = ((X356 @ id @ (lam @ (X362 @ sh @ one)) @ id))) | ~ ! [X364 : term,X365 : subst,X366 : subst] : (((sub @ (X362 @ X365 @ X364) @ X366)) = ((X362 @ (comp @ X365 @ X366) @ (sub @ X364 @ X366))))) | ~ ! [X367 : subst,X368 : subst,X369 : term,X370 : subst] : (~ ($true = ((X356 @ X370 @ X369 @ (comp @ X367 @ X368)))) | (((X356 @ (comp @ X370 @ X367) @ (sub @ X369 @ X367) @ X368)) = $true)) | (((X357 @ (lam @ X355))) = $true) | ~ ! [X371 : term] : (~ (((X357 @ X371)) = $true) | (((X357 @ (sub @ X355 @ (push @ X371 @ id)))) = $true)) | ~ ! [X372 : term] : (((X357 @ X372)) = ((X356 @ id @ X372 @ id)))) <=> (hoasinduction_lem3v2 = $true)) & (! [X373 : (term > $o),X374 : term,X375 : subst] : ~ ! [X376 : (term > $o)] : ~ ! [X377 : term] : (((X373 @ (sub @ X377 @ (push @ X374 @ X375)))) = ((X376 @ X377))) <=> (pushprop_lem0_lthm = $true)) & (pushprop_lem3v2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_lem2_lthm = $true) & ((! [X380 : term,X381 : (term > $o)] : (~ ! [X382 : term] : (~ ! [X383 : term] : (($true = ((X381 @ (sub @ X382 @ (push @ X383 @ id))))) | ~ ($true = ((X381 @ X383)))) | ($true = ((X381 @ (lam @ X382))))) | ~ ! [X384 : term] : (($true = ((X381 @ X384))) | ~ ($true = ((var @ X384)))) | ($true = ((X381 @ X380))) | ~ ! [X385 : term,X386 : term] : (~ ($true = ((X381 @ X386))) | (((X381 @ (ap @ X386 @ X385))) = $true) | ~ (((X381 @ X385)) = $true))) => (! [X387 : term,X388 : (subst > term > subst > $o),X389 : term] : (~ ($true = ((X388 @ id @ X387 @ id))) | ~ ! [X390 : term,X391 : term] : (~ ($true = ((X388 @ id @ X390 @ id))) | (((X388 @ id @ (ap @ (sub @ X391 @ id) @ X390) @ id)) = $true) | ~ ($true = ((X388 @ id @ X391 @ id)))) | ~ ! [X392 : term,X393 : subst,X394 : subst,X395 : subst] : (~ ($true = ((X388 @ (comp @ X393 @ X394) @ (sub @ X392 @ X394) @ X395))) | (((X388 @ X393 @ X392 @ (comp @ X394 @ X395))) = $true)) | ~ ! [X396 : subst,X397 : term,X398 : subst,X399 : subst] : (($true = ((X388 @ (comp @ X396 @ X399) @ (sub @ X397 @ X399) @ X398))) | ~ (((X388 @ X396 @ X397 @ (comp @ X399 @ X398))) = $true)) | ($true = ((X388 @ id @ (ap @ X387 @ X389) @ id))) | ~ ($true = ((X388 @ id @ X389 @ id)))) => (! [X400 : (subst > term > subst > $o),X401 : term] : (~ ! [X402 : subst,X403 : term,X404 : subst,X405 : subst] : (~ (((X400 @ X404 @ X403 @ (comp @ X402 @ X405))) = $true) | (((X400 @ (comp @ X404 @ X402) @ (sub @ X403 @ X402) @ X405)) = $true)) | ~ ! [X406 : (subst > term > term)] : (($true = ((X400 @ id @ (lam @ (X406 @ sh @ one)) @ id))) | ~ ! [X407 : term,X408 : subst,X409 : subst] : (((sub @ (X406 @ X408 @ X407) @ X409)) = ((X406 @ (comp @ X408 @ X409) @ (sub @ X407 @ X409)))) | ~ ! [X410 : term] : (~ ($true = ((X400 @ id @ X410 @ id))) | ($true = ((X400 @ id @ (X406 @ id @ X410) @ id))))) | ~ ! [X411 : term,X412 : subst,X413 : subst,X414 : subst] : ((((X400 @ X412 @ X411 @ (comp @ X414 @ X413))) = $true) | ~ (((X400 @ (comp @ X412 @ X414) @ (sub @ X411 @ X414) @ X413)) = $true)) | (((X400 @ id @ (lam @ X401) @ id)) = $true) | ~ ! [X415 : term] : (~ (((X400 @ id @ X415 @ id)) = $true) | (((X400 @ id @ (sub @ X401 @ (push @ X415 @ id)) @ id)) = $true))) => ! [X416 : (subst > term > subst > $o),X417 : term] : (~ ! [X418 : subst,X419 : subst,X420 : subst,X421 : term] : (~ (((X416 @ X418 @ X421 @ (comp @ X420 @ X419))) = $true) | ($true = ((X416 @ (comp @ X418 @ X420) @ (sub @ X421 @ X420) @ X419)))) | ~ ! [X422 : term,X423 : term] : (~ ($true = ((X416 @ id @ X423 @ id))) | ($true = ((X416 @ id @ (ap @ (sub @ X423 @ id) @ X422) @ id))) | ~ (((X416 @ id @ X422 @ id)) = $true)) | ($true = ((X416 @ id @ X417 @ id))) | ~ ! [X424 : term,X425 : subst,X426 : subst,X427 : subst] : ((((X416 @ X425 @ X424 @ (comp @ X427 @ X426))) = $true) | ~ (((X416 @ (comp @ X425 @ X427) @ (sub @ X424 @ X427) @ X426)) = $true)) | ~ ! [X428 : term] : (~ (((var @ (sub @ X428 @ id))) = $true) | ($true = ((X416 @ id @ X428 @ id)))) | ~ ! [X429 : (subst > term > term)] : (~ ! [X430 : subst,X431 : subst,X432 : term] : (((X429 @ (comp @ X430 @ X431) @ (sub @ X432 @ X431))) = ((sub @ (X429 @ X430 @ X432) @ X431))) | ~ ! [X433 : term] : ((((X416 @ id @ (X429 @ id @ X433) @ id)) = $true) | ~ ($true = ((X416 @ id @ X433 @ id)))) | ($true = ((X416 @ id @ (lam @ (X429 @ sh @ one)) @ id)))))))) <=> (hoasinduction_lthm = $true)) & ((! [X434 : (subst > term > subst > $o)] : ~ ! [X435 : (term > $o)] : ~ ! [X436 : term] : (((X434 @ id @ X436 @ id)) = ((X435 @ X436))) => (! [X437 : term,X438 : (term > $o)] : ((((X438 @ X437)) = $true) | ~ ! [X439 : term] : (~ ($true = ((var @ X439))) | ($true = ((X438 @ X439)))) | ~ ! [X440 : term] : (~ ! [X441 : term] : (~ ($true = ((X438 @ X441))) | ($true = ((X438 @ (sub @ X440 @ (push @ X441 @ id)))))) | ($true = ((X438 @ (lam @ X440))))) | ~ ! [X442 : term,X443 : term] : (~ ($true = ((X438 @ X442))) | ~ ($true = ((X438 @ X443))) | ($true = ((X438 @ (ap @ X442 @ X443)))))) => (! [X444 : term] : (((sub @ X444 @ id)) = X444) => (! [X445 : (term > $o),X446 : (subst > term > subst > $o),X447 : term] : (~ ! [X448 : term] : (((X446 @ id @ X448 @ id)) = ((X445 @ X448))) | ~ ! [X449 : (subst > term > term)] : (~ ! [X450 : term] : (~ ($true = ((X446 @ id @ X450 @ id))) | ($true = ((X446 @ id @ (X449 @ id @ X450) @ id)))) | ($true = ((X446 @ id @ (lam @ (X449 @ sh @ one)) @ id))) | ~ ! [X451 : term,X452 : subst,X453 : subst] : (((sub @ (X449 @ X453 @ X451) @ X452)) = ((X449 @ (comp @ X453 @ X452) @ (sub @ X451 @ X452))))) | ($true = ((X445 @ (lam @ X447)))) | ~ ! [X454 : term] : (~ (((X445 @ X454)) = $true) | (((X445 @ (sub @ X447 @ (push @ X454 @ id)))) = $true))) => ! [X455 : (subst > term > subst > $o),X456 : term] : (~ ! [X457 : subst,X458 : term,X459 : subst,X460 : subst] : (~ (((X455 @ X457 @ X458 @ (comp @ X460 @ X459))) = $true) | ($true = ((X455 @ (comp @ X457 @ X460) @ (sub @ X458 @ X460) @ X459)))) | ~ ! [X461 : term] : (~ ($true = ((var @ (sub @ X461 @ id)))) | (((X455 @ id @ X461 @ id)) = $true)) | ~ ! [X462 : (subst > term > term)] : (~ ! [X463 : subst,X464 : subst,X465 : term] : (((X462 @ (comp @ X463 @ X464) @ (sub @ X465 @ X464))) = ((sub @ (X462 @ X463 @ X465) @ X464))) | ($true = ((X455 @ id @ (lam @ (X462 @ sh @ one)) @ id))) | ~ ! [X466 : term] : (~ (((X455 @ id @ X466 @ id)) = $true) | ($true = ((X455 @ id @ (X462 @ id @ X466) @ id))))) | ~ ! [X467 : term,X468 : term] : (~ (((X455 @ id @ X468 @ id)) = $true) | ~ ($true = ((X455 @ id @ X467 @ id))) | (((X455 @ id @ (ap @ (sub @ X467 @ id) @ X468) @ id)) = $true)) | (((X455 @ id @ X456 @ id)) = $true) | ~ ! [X469 : term,X470 : subst,X471 : subst,X472 : subst] : (($true = ((X455 @ X471 @ X469 @ (comp @ X470 @ X472)))) | ~ (((X455 @ (comp @ X471 @ X470) @ (sub @ X469 @ X470) @ X472)) = $true))))))) <=> (hoasinduction_lthm_3 = $true)) & (id = ((d2subst @ d_id))) & ((! [X473 : term,X474 : subst] : (((sub @ one @ (push @ X473 @ X474))) = X473) => (! [X475 : subst,X476 : term] : (((comp @ sh @ (push @ X476 @ X475))) = X475) => (! [X477 : term,X478 : term] : ((X477 = X478) | (((lam @ X478)) != ((lam @ X477)))) => ! [X479 : term,X480 : (subst > term > term),X481 : subst,X482 : (subst > term > term)] : ((((X482 @ X481 @ X479)) = ((X480 @ X481 @ X479))) | (((lam @ (X482 @ sh @ one))) != ((lam @ (X480 @ sh @ one)))) | ~ ! [X483 : subst,X484 : subst,X485 : term] : (((X482 @ (comp @ X483 @ X484) @ (sub @ X485 @ X484))) = ((sub @ (X482 @ X483 @ X485) @ X484))) | ~ ! [X486 : subst,X487 : term,X488 : subst] : (((X480 @ (comp @ X488 @ X486) @ (sub @ X487 @ X486))) = ((sub @ (X480 @ X488 @ X487) @ X486))))))) <=> (hoaslaminj_lthm = $true)) & ((! [X489 : term] : (((sub @ X489 @ id)) = X489) => ! [X490 : term,X491 : (subst > term > subst > $o),X492 : (term > $o)] : (~ ! [X493 : (subst > term > term)] : (~ ! [X494 : subst,X495 : subst,X496 : term] : (((X493 @ (comp @ X495 @ X494) @ (sub @ X496 @ X494))) = ((sub @ (X493 @ X495 @ X496) @ X494))) | ~ ! [X497 : term] : (~ ($true = ((X491 @ id @ X497 @ id))) | ($true = ((X491 @ id @ (X493 @ id @ X497) @ id)))) | ($true = ((X491 @ id @ (lam @ (X493 @ sh @ one)) @ id)))) | ~ ! [X498 : term] : (~ (((X492 @ X498)) = $true) | (((X492 @ (sub @ X490 @ (push @ X498 @ id)))) = $true)) | ~ ! [X499 : term] : (((X492 @ X499)) = ((X491 @ id @ X499 @ id))) | ~ ! [X500 : subst,X501 : subst,X502 : subst,X503 : term] : ((((X491 @ (comp @ X502 @ X501) @ (sub @ X503 @ X501) @ X500)) = $true) | ~ ($true = ((X491 @ X502 @ X503 @ (comp @ X501 @ X500))))) | (((X492 @ (lam @ X490))) = $true) | ~ ! [X504 : term,X505 : subst,X506 : subst,X507 : subst] : (~ ($true = ((X491 @ (comp @ X505 @ X507) @ (sub @ X504 @ X507) @ X506))) | (((X491 @ X505 @ X504 @ (comp @ X507 @ X506))) = $true)))) <=> (hoasinduction_lem3v2_lthm = $true)) & (pushprop_lem3v2 = $true) & ((! [X508 : term] : (((sub @ X508 @ id)) = X508) => (! [X509 : term,X510 : subst,X511 : (term > $o)] : (~ ! [X512 : term,X513 : term] : (~ ($true = ((X511 @ X513))) | (((X511 @ (ap @ X513 @ X512))) = $true) | ~ ($true = ((X511 @ X512)))) | ~ ! [X514 : term] : (~ ($true = ((var @ X514))) | (((X511 @ (sub @ X514 @ X510))) = $true)) | ~ ! [X515 : term] : (($true = ((X511 @ (lam @ X515)))) | ~ ! [X516 : term] : ((((X511 @ (sub @ X515 @ (push @ X516 @ id)))) = $true) | ~ ($true = ((X511 @ X516))))) | (((X511 @ (sub @ X509 @ X510))) = $true)) => ! [X517 : term,X518 : (term > $o)] : (~ ! [X519 : term] : ((((X518 @ (lam @ X519))) = $true) | ~ ! [X520 : term] : (~ (((X518 @ X520)) = $true) | (((X518 @ (sub @ X519 @ (push @ X520 @ id)))) = $true))) | ~ ! [X521 : term] : (($true = ((X518 @ X521))) | ~ ($true = ((var @ X521)))) | (((X518 @ X517)) = $true) | ~ ! [X522 : term,X523 : term] : (~ ($true = ((X518 @ X522))) | ($true = ((X518 @ (ap @ X522 @ X523)))) | ~ (((X518 @ X523)) = $true))))) <=> (induction2_lthm = $true)) & (! [X524 : term,X525 : (subst > term > term),X526 : term] : ((((ap @ (sub @ X526 @ id) @ X524)) != ((lam @ (X525 @ sh @ one)))) | ~ ! [X527 : term,X528 : subst,X529 : subst] : (((sub @ (X525 @ X529 @ X527) @ X528)) = ((X525 @ (comp @ X529 @ X528) @ (sub @ X527 @ X528))))) <=> (hoaslamnotap = $true)) & ((substmonoid = $true) <=> (! [X530 : subst] : (((comp @ X530 @ id)) = X530) & ! [X531 : subst] : (((comp @ id @ X531)) = X531))) & ((hoasapinj1_lthm = $true) <=> (! [X532 : term] : (((sub @ X532 @ id)) = X532) => (! [X533 : term,X534 : term,X535 : term,X536 : term] : ((X535 = X536) | (((ap @ X536 @ X534)) != ((ap @ X535 @ X533)))) => ! [X537 : term,X538 : term,X539 : term,X540 : term] : ((X537 = X539) | (((ap @ (sub @ X539 @ id) @ X540)) != ((ap @ (sub @ X537 @ id) @ X538))))))) & (lamnotvar = $true) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X541 : (subst > term > subst > $o),X542 : term] : ((((X541 @ id @ X542 @ id)) = $true) | ~ ! [X543 : (subst > term > term)] : (($true = ((X541 @ id @ (lam @ (X543 @ sh @ one)) @ id))) | ~ ! [X544 : term] : (($true = ((X541 @ id @ (X543 @ id @ X544) @ id))) | ~ ($true = ((X541 @ id @ X544 @ id)))) | ~ ! [X545 : term,X546 : subst,X547 : subst] : (((X543 @ (comp @ X546 @ X547) @ (sub @ X545 @ X547))) = ((sub @ (X543 @ X546 @ X545) @ X547)))) | ~ ! [X548 : term,X549 : term] : ((((X541 @ id @ (ap @ (sub @ X548 @ id) @ X549) @ id)) = $true) | ~ (((X541 @ id @ X549 @ id)) = $true) | ~ (((X541 @ id @ X548 @ id)) = $true))) <=> (hoasinduction_no_psi_cond = $true))),
  inference(fool_elimination,[],[f4])).
thf(f6,plain,(
  ~ (hoasinduction_lem1 = ! [X0 : (subst > term > subst > $o)] : (! [X1 : subst,X2 : subst,X3 : term,X4 : subst] : ((X0 @ X2 @ X3 @ (comp @ X4 @ X1)) => (X0 @ (comp @ X2 @ X4) @ (sub @ X3 @ X4) @ X1)) => (! [X5 : term,X6 : subst,X7 : subst,X8 : subst] : ((X0 @ (comp @ X8 @ X7) @ (sub @ X5 @ X7) @ X6) => (X0 @ X8 @ X5 @ (comp @ X7 @ X6))) => (! [X9 : term] : ((hoasvar @ id @ X9 @ id) => (X0 @ id @ X9 @ id)) => ! [X10 : term] : ((var @ X10) => (X0 @ id @ X10 @ id))))))),
  inference(rectify,[],[f2])).
thf(f7,plain,(
  ~((hoasinduction_lem1 = $true) <=> ! [X0 : (subst > term > subst > $o)] : (! [X2 : subst,X4 : subst,X3 : term,X1 : subst] : (($true = ((X0 @ X2 @ X3 @ (comp @ X4 @ X1)))) => (((X0 @ (comp @ X2 @ X4) @ (sub @ X3 @ X4) @ X1)) = $true)) => (! [X6 : subst,X7 : subst,X5 : term,X8 : subst] : (($true = ((X0 @ (comp @ X8 @ X7) @ (sub @ X5 @ X7) @ X6))) => (((X0 @ X8 @ X5 @ (comp @ X7 @ X6))) = $true)) => (! [X9 : term] : (($true = ((hoasvar @ id @ X9 @ id))) => (((X0 @ id @ X9 @ id)) = $true)) => ! [X10 : term] : ((((var @ X10)) = $true) => ($true = ((X0 @ id @ X10 @ id))))))))),
  inference(fool_elimination,[],[f6])).
thf(f8,plain,(
  (ulamvarsh = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lthm = $true) & (pushprop_lem1_gthm = $true) & (! [X0 : (subst > term > subst > $o),X1 : term] : (($true = ((X0 @ id @ (lam @ X1) @ id))) | ~ ! [X2 : (subst > term > term)] : ((((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true) | ~ ! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) | ~ ! [X6 : term] : (~ (((X0 @ id @ X6 @ id)) = $true) | ($true = ((X0 @ id @ (X2 @ id @ X6) @ id))))) | ~ ! [X7 : term] : (($true = ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id))) | ~ (((X0 @ id @ X7 @ id)) = $true))) <=> (hoasinduction_lem3a = $true)) & (apnotvar = $true) & (hoasinduction_lem3_gthm = $true) & ((induction2lem_lthm = $true) <=> (! [X9 : subst,X8 : term] : (((sub @ one @ (push @ X8 @ X9))) = X8) => (! [X10 : term,X11 : subst] : (((comp @ sh @ (push @ X10 @ X11))) = X11) => (! [X12 : subst] : (((comp @ X12 @ id)) = X12) => (! [X13 : term,X14 : (term > $o)] : (~ ! [X15 : term] : (($true = ((X14 @ X15))) | ~ (((var @ X15)) = $true)) | ~ ! [X16 : term] : (~ (((X14 @ X16)) = $true) | (((X14 @ (lam @ X16))) = $true)) | ($true = ((X14 @ X13))) | ~ ! [X17 : term,X18 : term] : (~ (((X14 @ X17)) = $true) | ($true = ((X14 @ (ap @ X18 @ X17)))) | ~ (((X14 @ X18)) = $true))) => ! [X19 : subst,X20 : term,X21 : (term > $o)] : (~ ! [X22 : term,X23 : term] : ((((X21 @ (ap @ X23 @ X22))) = $true) | ~ ($true = ((X21 @ X22))) | ~ ($true = ((X21 @ X23)))) | (((X21 @ (sub @ X20 @ X19))) = $true) | ~ ! [X24 : term] : (~ ($true = ((var @ X24))) | ($true = ((X21 @ (sub @ X24 @ X19))))) | ~ ! [X25 : term] : (($true = ((X21 @ (lam @ X25)))) | ~ ! [X26 : term] : (~ ($true = ((X21 @ X26))) | (((X21 @ (sub @ X25 @ (push @ X26 @ id)))) = $true))))))))) & ((pushprop_lem1v2 = $true) <=> ! [X27 : subst,X28 : (term > $o),X29 : (term > $o),X30 : term] : ((((X28 @ one)) = $true) | ~ ($true = ((X29 @ X30))) | ~ ! [X31 : term] : (((X28 @ X31)) = ((X29 @ (sub @ X31 @ (push @ X30 @ X27))))))) & (hoasapnotvar = $true) & (hoasinduction_lem2v2_gthm = $true) & ~ (lamnotap = $true) & (((d2subst @ d_id)) = sh) & ((termmset_lthm = $true) <=> (! [X32 : term] : (((sub @ X32 @ id)) = X32) => ! [X33 : term] : (((sub @ X33 @ id)) = X33))) & ((pushprop_lem0 = $true) <=> ! [X35 : (term > $o),X36 : term,X34 : subst] : ~ ! [X37 : (term > $o)] : ~ ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & (axabs = $true) & (pushprop_lem0_gthm = $true) & (pushprop = $true) & (hoasinduction_lem1_gthm = $true) & (hoasinduction_lem1 = $true) & (hoasinduction_gthm = $true) & (hoaslamnotvar_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((hoasinduction_lem3_lthm = $true) <=> (! [X39 : term] : (((sub @ X39 @ id)) = X39) => (! [X40 : (subst > term > subst > $o),X41 : term] : (($true = ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id))) | ~ ! [X42 : term] : ((((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true) | ~ ($true = ((X40 @ id @ X42 @ id)))) | ~ ! [X43 : (subst > term > term)] : (~ ! [X44 : term] : (~ ($true = ((X40 @ id @ X44 @ id))) | ($true = ((X40 @ id @ (X43 @ id @ X44) @ id)))) | ~ ! [X47 : subst,X45 : term,X46 : subst] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) = ((sub @ (X43 @ X47 @ X45) @ X46))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id))))) => ! [X48 : term,X49 : (subst > term > subst > $o)] : (~ ! [X50 : term] : (($true = ((X49 @ id @ (sub @ X48 @ (push @ X50 @ id)) @ id))) | ~ (((X49 @ id @ X50 @ id)) = $true)) | ($true = ((X49 @ id @ (lam @ X48) @ id))) | ~ ! [X51 : term,X52 : subst,X53 : subst,X54 : subst] : (($true = ((X49 @ X53 @ X51 @ (comp @ X52 @ X54)))) | ~ (((X49 @ (comp @ X53 @ X52) @ (sub @ X51 @ X52) @ X54)) = $true)) | ~ ! [X55 : (subst > term > term)] : (~ ! [X58 : subst,X56 : term,X57 : subst] : (((X55 @ (comp @ X58 @ X57) @ (sub @ X56 @ X57))) = ((sub @ (X55 @ X58 @ X56) @ X57))) | (((X49 @ id @ (lam @ (X55 @ sh @ one)) @ id)) = $true) | ~ ! [X59 : term] : (~ (((X49 @ id @ X59 @ id)) = $true) | ($true = ((X49 @ id @ (X55 @ id @ X59) @ id))))) | ~ ! [X60 : subst,X61 : subst,X62 : term,X63 : subst] : (($true = ((X49 @ (comp @ X63 @ X61) @ (sub @ X62 @ X61) @ X60))) | ~ ($true = ((X49 @ X63 @ X62 @ (comp @ X61 @ X60))))))))) & ((hoasapinj2_lthm = $true) <=> (! [X64 : term,X65 : term,X66 : term,X67 : term] : ((X64 = X66) | (((ap @ X67 @ X66)) != ((ap @ X65 @ X64)))) => ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))))) & (hoasapnotvar_lthm = $true) & ~ (((var @ (d2term @ d_one))) = $true) & (hoasinduction_lem1v2_gthm = $true) & (hoaslamnotap_lthm = $true) & ((induction2lem = $true) <=> ! [X72 : subst,X73 : (term > $o),X74 : term] : (~ ! [X75 : term] : (~ (((var @ X75)) = $true) | (((X73 @ (sub @ X75 @ X72))) = $true)) | ~ ! [X76 : term] : (($true = ((X73 @ (lam @ X76)))) | ~ ! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ~ ($true = ((X73 @ X77))))) | ($true = ((X73 @ (sub @ X74 @ X72)))) | ~ ! [X78 : term,X79 : term] : (~ ($true = ((X73 @ X79))) | ~ (((X73 @ X78)) = $true) | (((X73 @ (ap @ X78 @ X79))) = $true)))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X80 : (subst > term > subst > $o)] : ~ ! [X81 : (term > $o)] : ~ ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82)))) & ((hoasinduction_lem3aa = $true) <=> ! [X83 : (subst > term > subst > $o),X84 : term] : (~ ! [X85 : (subst > term > term)] : (~ ! [X86 : term] : (~ (((X83 @ id @ X86 @ id)) = $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) | ($true = ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) | ~ ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id))) | ~ ! [X90 : term] : (~ (((X83 @ id @ X90 @ id)) = $true) | ($true = ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))))) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) = ((d2subst @ X91))) => (X91 = X92)) & (pushprop_lthm_orig = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (hoaslaminj_gthm = $true) & (hoaslamnotvar = $true) & ((induction = $true) <=> ! [X93 : (term > $o),X94 : term] : (~ ! [X95 : term,X96 : term] : (($true = ((X93 @ (ap @ X95 @ X96)))) | ~ ($true = ((X93 @ X95))) | ~ ($true = ((X93 @ X96)))) | ~ ! [X97 : term] : (~ (((var @ X97)) = $true) | ($true = ((X93 @ X97)))) | ~ ! [X98 : term] : (($true = ((X93 @ (lam @ X98)))) | ~ ($true = ((X93 @ X98)))) | (((X93 @ X94)) = $true))) & (! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) <=> (axshiftcons = $true)) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X101 : term] : (((sub @ X101 @ id)) = X101) => (! [X102 : (subst > term > subst > $o),X103 : term] : (~ ! [X104 : term] : (~ (((X102 @ id @ X104 @ id)) = $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id)))) | ($true = ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) | ~ ! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ~ ! [X106 : term] : (~ (((X102 @ id @ X106 @ id)) = $true) | (((X102 @ id @ (X105 @ id @ X106) @ id)) = $true)) | ~ ! [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) = ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108)))))) => ! [X110 : term,X111 : (subst > term > subst > $o)] : (~ ! [X112 : term] : (($true = ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) | ~ ($true = ((X111 @ id @ X112 @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ~ ! [X113 : (subst > term > term)] : (~ ! [X114 : term] : (~ (((X111 @ id @ X114 @ id)) = $true) | ($true = ((X111 @ id @ (X113 @ id @ X114) @ id)))) | ~ ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))) | ($true = ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id)))))))) & ! [X118 : d_subst] : (d_id = X118) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & ~ (ulamvar1 = $true) & (! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) <=> (hoasapinj1 = $true)) & (ulamvarind = $true) & ((apinj1 = $true) <=> ! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125))))) & (! [X129 : (subst > term > subst > $o),X130 : term] : (~ ! [X131 : term] : ((((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) = $true) | ~ ($true = ((X129 @ id @ X131 @ id)))) | ~ ! [X132 : term,X133 : (subst > term > term)] : (~ ! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) | (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) = $true) | ~ ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139))) | ~ ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | ~ (((X129 @ id @ X140 @ id)) = $true))) | (((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true)) <=> (hoasinduction_lem3aaa = $true)) & ! [X142 : d_term,X141 : d_term] : ((((d2term @ X141)) = ((d2term @ X142))) => (X141 = X142)) & (pushprop_lem2v2_gthm = $true) & (! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) <=> (apinj2 = $true)) & (induction2_gthm = $true) & ((pushprop_lem1_lthm = $true) <=> (! [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) = X147) => (! [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) = X150) => ! [X151 : subst,X152 : term,X153 : (term > $o),X154 : term,X155 : (term > $o)] : (~ (((X153 @ X152)) = $true) | (((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true))))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (! [X157 : term,X156 : term] : ((X156 = X157) | (((sub @ X157 @ sh)) != ((sub @ X156 @ sh)))) <=> (shinj = $true)) & (substmonoid_gthm = $true) & (induction2lem_gthm = $true) & ((induction2 = $true) <=> ! [X158 : term,X159 : (term > $o)] : (~ ! [X160 : term,X161 : term] : (($true = ((X159 @ (ap @ X160 @ X161)))) | ~ (((X159 @ X161)) = $true) | ~ (((X159 @ X160)) = $true)) | ($true = ((X159 @ X158))) | ~ ! [X162 : term] : (~ (((var @ X162)) = $true) | ($true = ((X159 @ X162)))) | ~ ! [X163 : term] : (~ ! [X164 : term] : (($true = ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) | ~ ($true = ((X159 @ X164)))) | (((X159 @ (lam @ X163))) = $true)))) & (! [X165 : term] : ~ ! [X166 : (subst > term > term)] : (((X166 @ sh @ one)) != ((sub @ X165 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & ! [X167 : subst] : ? [X168 : d_subst] : (((d2subst @ X168)) = X167) & (hoasapnotvar_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (hoasapinj1_gthm = $true) & ! [X169 : d_term] : (d_one = X169) & ((axscons = $true) <=> ! [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) = X170)) & ((hoaslaminj = $true) <=> ! [X172 : (subst > term > term),X174 : subst,X171 : (subst > term > term),X173 : term] : ((((lam @ (X171 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((X172 @ X174 @ X173)) = ((X171 @ X174 @ X173))) | ~ ! [X179 : subst,X180 : term,X178 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) = ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) | ~ ! [X176 : term,X177 : subst,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) = ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))))) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (! [X181 : subst] : (((comp @ X181 @ id)) = X181) <=> (axidr = $true)) & (termmset_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (! [X182 : term] : ~ ! [X183 : (subst > term > term)] : ~ ! [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) = ((X183 @ X184 @ X185))) <=> (hoasinduction_lem3v2_f = $true)) & (axassoc = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X186 : (subst > term > subst > $o),X187 : term] : (~ ! [X188 : (subst > term > term)] : (~ ! [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X188 @ X191 @ X189) @ X190))) | ($true = ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id))) | ~ ! [X192 : term] : (($true = ((X186 @ id @ (X188 @ id @ X192) @ id))) | ~ ($true = ((X186 @ id @ X192 @ id))))) | (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X193 : term] : ((((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) = $true) | ~ ($true = ((X186 @ id @ X193 @ id)))))) & ((hoasinduction = $true) <=> ! [X194 : term,X195 : (subst > term > subst > $o)] : (~ ! [X196 : term] : (~ ($true = ((var @ (sub @ X196 @ id)))) | ($true = ((X195 @ id @ X196 @ id)))) | ~ ! [X197 : (subst > term > term)] : (~ ! [X198 : term] : (~ (((X195 @ id @ X198 @ id)) = $true) | (((X195 @ id @ (X197 @ id @ X198) @ id)) = $true)) | ($true = ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) | ~ ! [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) = ((sub @ (X197 @ X200 @ X201) @ X199)))) | ~ ! [X202 : subst,X203 : subst,X204 : subst,X205 : term] : (~ (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) = $true) | (((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) = $true)) | ~ ! [X206 : term,X207 : term] : (($true = ((X195 @ id @ (ap @ (sub @ X206 @ id) @ X207) @ id))) | ~ ($true = ((X195 @ id @ X207 @ id))) | ~ ($true = ((X195 @ id @ X206 @ id)))) | ~ ! [X208 : subst,X209 : term,X210 : subst,X211 : subst] : (~ ($true = ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211))) | ($true = ((X195 @ X208 @ X209 @ (comp @ X210 @ X211))))) | (((X195 @ id @ X194 @ id)) = $true))) & (axvarshift = $true) & (hoaslamnotap_gthm = $true) & (! [X212 : subst,X213 : (term > $o),X214 : term,X215 : (term > $o),X216 : term] : (~ ($true = ((X215 @ X214))) | (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) = $true)) <=> (pushprop_lem1 = $true)) & (! [X217 : term] : (((sub @ X217 @ id)) = X217) <=> (termmset = $true)) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = one) & ((laminj = $true) <=> ! [X219 : term,X218 : term] : ((X218 = X219) | (((lam @ X219)) != ((lam @ X218))))) & (! [X220 : subst] : (((comp @ id @ X220)) = X220) <=> (axidl = $true)) & ~ (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) = $true) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasinduction_lem1_lthm = $true) & ((! [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) = X221) => ! [X223 : subst,X224 : term,X225 : (term > $o),X226 : (term > $o)] : (~ ! [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) = ((X226 @ X227))) | ~ ($true = ((X225 @ X224))) | ($true = ((X226 @ one))))) <=> (pushprop_lem1v2_lthm = $true)) & (! [X228 : (subst > term > subst > $o)] : ~ ! [X229 : (term > $o)] : ~ ! [X230 : term] : (((X229 @ X230)) = ((X228 @ id @ X230 @ id))) <=> (hoasinduction_lem0 = $true)) & (! [X231 : term,X232 : (subst > term > subst > $o)] : (~ ! [X233 : term,X234 : subst,X235 : subst,X236 : subst] : ((((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) = $true) | ~ ($true = ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235)))) | ~ ! [X237 : (subst > term > term)] : (~ ! [X238 : term] : ((((X232 @ id @ (X237 @ id @ X238) @ id)) = $true) | ~ (((X232 @ id @ X238 @ id)) = $true)) | (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) = $true) | ~ ! [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) = ((sub @ (X237 @ X239 @ X241) @ X240)))) | ~ ! [X242 : subst,X243 : subst,X244 : subst,X245 : term] : (($true = ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) | ~ ($true = ((X232 @ X244 @ X245 @ (comp @ X243 @ X242))))) | ($true = ((X232 @ id @ (lam @ X231) @ id))) | ~ ! [X246 : term] : ((((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) = $true) | ~ (((X232 @ id @ X246 @ id)) = $true))) <=> (hoasinduction_lem3 = $true)) & (hoasinduction_lem3v2_gthm = $true) & (axclos = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X247 : term] : ~ ! [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) != ((X248 @ sh @ one)))) & (hoasinduction_lem1v2 = $true) & (hoaslamnotvar_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (axmap = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X249 : term,X250 : (subst > term > subst > $o),X251 : (term > $o)] : (($true = ((X251 @ (lam @ X249)))) | ~ ! [X252 : term] : (((X250 @ id @ X252 @ id)) = ((X251 @ X252))) | ~ ! [X253 : term] : (~ (((X251 @ X253)) = $true) | ($true = ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) | ~ ! [X254 : (subst > term > term)] : (($true = ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) | ~ ! [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) = ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255)))) | ~ ! [X258 : term] : (~ ($true = ((X250 @ id @ X258 @ id))) | ($true = ((X250 @ id @ (X254 @ id @ X258) @ id))))))) & (pushprop_gthm = $true) & (! [X259 : term] : (((sub @ X259 @ id)) = X259) <=> (axvarid = $true)) & (hoasapinj2_gthm = $true) & (! [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) = X260) <=> (axvarcons = $true)) & (hoasinduction_lem3b_gthm = $true) & ((! [X262 : term] : ~ ! [X263 : (subst > term > term)] : ~ ! [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) = ((X263 @ X264 @ X265))) => (! [X266 : term] : (((sub @ X266 @ id)) = X266) => ! [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (~ ! [X270 : term] : (((X268 @ id @ X270 @ id)) = ((X267 @ X270))) | ~ ! [X271 : term] : (($true = ((X267 @ (sub @ X269 @ (push @ X271 @ id))))) | ~ ($true = ((X267 @ X271)))) | ($true = ((X267 @ (lam @ X269)))) | ~ ! [X272 : (subst > term > term)] : (~ ! [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) = ((sub @ (X272 @ X273 @ X275) @ X274))) | ~ ! [X276 : term] : (($true = ((X268 @ id @ (X272 @ id @ X276) @ id))) | ~ (((X268 @ id @ X276 @ id)) = $true)) | ($true = ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ((! [X277 : (subst > term > subst > $o)] : ~ ! [X278 : (term > $o)] : ~ ! [X279 : term] : (((X277 @ id @ X279 @ id)) = ((X278 @ X279))) => (! [X280 : (term > $o),X281 : term] : (~ ! [X282 : term] : (~ ! [X283 : term] : (($true = ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) | ~ ($true = ((X280 @ X283)))) | ($true = ((X280 @ (lam @ X282))))) | ($true = ((X280 @ X281))) | ~ ! [X284 : term,X285 : term] : (($true = ((X280 @ (ap @ X285 @ X284)))) | ~ ($true = ((X280 @ X285))) | ~ ($true = ((X280 @ X284)))) | ~ ! [X286 : term] : (~ ($true = ((var @ X286))) | ($true = ((X280 @ X286))))) => (! [X287 : term] : (((sub @ X287 @ id)) = X287) => (! [X288 : (subst > term > subst > $o),X289 : (term > $o),X290 : term] : (~ ! [X291 : term] : (((X289 @ X291)) = ((X288 @ id @ X291 @ id))) | ~ ! [X292 : term] : (($true = ((X289 @ (sub @ X290 @ (push @ X292 @ id))))) | ~ ($true = ((X289 @ X292)))) | ($true = ((X289 @ (lam @ X290)))) | ~ ! [X293 : (subst > term > term)] : (~ ! [X294 : term] : ((((X288 @ id @ (X293 @ id @ X294) @ id)) = $true) | ~ (((X288 @ id @ X294 @ id)) = $true)) | ~ ! [X297 : term,X295 : subst,X296 : subst] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) = ((sub @ (X293 @ X295 @ X297) @ X296))) | ($true = ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id))))) => ! [X298 : term,X299 : (subst > term > subst > $o)] : (~ ! [X300 : (subst > term > term)] : ((((X299 @ id @ (lam @ (X300 @ sh @ one)) @ id)) = $true) | ~ ! [X303 : term,X302 : subst,X301 : subst] : (((X300 @ (comp @ X301 @ X302) @ (sub @ X303 @ X302))) = ((sub @ (X300 @ X301 @ X303) @ X302))) | ~ ! [X304 : term] : (~ ($true = ((X299 @ id @ X304 @ id))) | ($true = ((X299 @ id @ (X300 @ id @ X304) @ id))))) | ~ ! [X305 : term,X306 : term] : (~ ($true = ((X299 @ id @ X305 @ id))) | ($true = ((X299 @ id @ (ap @ (sub @ X306 @ id) @ X305) @ id))) | ~ (((X299 @ id @ X306 @ id)) = $true)) | ($true = ((X299 @ id @ X298 @ id)))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (! [X307 : term,X308 : term,X309 : (subst > term > subst > $o),X310 : (term > $o)] : (~ (((X310 @ X308)) = $true) | ($true = ((X310 @ (ap @ X307 @ X308)))) | ~ ! [X311 : term] : (((X309 @ id @ X311 @ id)) = ((X310 @ X311))) | ~ ! [X312 : term,X313 : term] : (~ ($true = ((X309 @ id @ X313 @ id))) | (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) = $true) | ~ (((X309 @ id @ X312 @ id)) = $true)) | ~ ! [X314 : subst,X315 : subst,X316 : term,X317 : subst] : (~ ($true = ((X309 @ X315 @ X316 @ (comp @ X317 @ X314)))) | ($true = ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314)))) | ~ (((X310 @ X307)) = $true) | ~ ! [X318 : subst,X319 : subst,X320 : subst,X321 : term] : (~ ($true = ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) | ($true = ((X309 @ X319 @ X321 @ (comp @ X320 @ X318)))))) <=> (hoasinduction_lem2v2 = $true)) & (! [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 = X325) | (((ap @ (sub @ X324 @ id) @ X325)) != ((ap @ (sub @ X322 @ id) @ X323)))) <=> (hoasapinj2 = $true)) & ((substmonoid_lthm = $true) <=> (! [X326 : subst] : (((comp @ id @ X326)) = X326) => (! [X327 : subst] : (((comp @ X327 @ id)) = X327) => (! [X329 : subst] : (((comp @ X329 @ id)) = X329) & ! [X328 : subst] : (((comp @ id @ X328)) = X328))))) & ((hoasinduction_lem2 = $true) <=> ! [X330 : term,X331 : term,X332 : (subst > term > subst > $o)] : (~ ! [X333 : subst,X334 : term,X335 : subst,X336 : subst] : (~ (((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) = $true) | ($true = ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) | ~ ($true = ((X332 @ id @ X331 @ id))) | ~ ! [X337 : subst,X338 : subst,X339 : term,X340 : subst] : (~ (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) = $true) | ($true = ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338)))) | ($true = ((X332 @ id @ (ap @ X331 @ X330) @ id))) | ~ ! [X341 : term,X342 : term] : ((((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) = $true) | ~ (((X332 @ id @ X341 @ id)) = $true) | ~ (((X332 @ id @ X342 @ id)) = $true)) | ~ (((X332 @ id @ X330 @ id)) = $true))) & (pushprop_lem2v2 = $true) & (! [X343 : term] : ~ ! [X344 : (subst > term > term)] : ~ ! [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) = ((X344 @ X346 @ X345))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (axapp = $true) & (! [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : (~ ! [X350 : subst,X351 : subst,X352 : subst,X353 : term] : (~ ($true = ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) | ($true = ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) | ~ ! [X354 : (subst > term > term)] : (~ ! [X355 : term] : (~ (((X348 @ id @ X355 @ id)) = $true) | (((X348 @ id @ (X354 @ id @ X355) @ id)) = $true)) | ($true = ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) | ~ ! [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) = ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358))))) | ~ ! [X359 : subst,X360 : subst,X361 : term,X362 : subst] : (~ (((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) = $true) | ($true = ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) | (((X349 @ (lam @ X347))) = $true) | ~ ! [X363 : term] : (~ ($true = ((X349 @ X363))) | ($true = ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) | ~ ! [X364 : term] : (((X349 @ X364)) = ((X348 @ id @ X364 @ id)))) <=> (hoasinduction_lem3v2 = $true)) & (! [X367 : subst,X365 : (term > $o),X366 : term] : ~ ! [X368 : (term > $o)] : ~ ! [X369 : term] : (((X368 @ X369)) = ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))) <=> (pushprop_lem0_lthm = $true)) & (pushprop_lem3v2_lthm = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_lem2_lthm = $true) & ((! [X370 : term,X371 : (term > $o)] : (~ ! [X372 : term] : (~ ! [X373 : term] : ((((X371 @ (sub @ X372 @ (push @ X373 @ id)))) = $true) | ~ (((X371 @ X373)) = $true)) | ($true = ((X371 @ (lam @ X372))))) | ~ ! [X374 : term] : (($true = ((X371 @ X374))) | ~ (((var @ X374)) = $true)) | (((X371 @ X370)) = $true) | ~ ! [X375 : term,X376 : term] : (~ ($true = ((X371 @ X376))) | ($true = ((X371 @ (ap @ X376 @ X375)))) | ~ (((X371 @ X375)) = $true))) => (! [X377 : term,X378 : (subst > term > subst > $o),X379 : term] : (~ ($true = ((X378 @ id @ X377 @ id))) | ~ ! [X380 : term,X381 : term] : (~ (((X378 @ id @ X380 @ id)) = $true) | (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) = $true) | ~ (((X378 @ id @ X381 @ id)) = $true)) | ~ ! [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (~ ($true = ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) | ($true = ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) | ~ ! [X386 : subst,X387 : term,X388 : subst,X389 : subst] : (($true = ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388))) | ~ (((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) = $true)) | ($true = ((X378 @ id @ (ap @ X377 @ X379) @ id))) | ~ ($true = ((X378 @ id @ X379 @ id)))) => (! [X390 : (subst > term > subst > $o),X391 : term] : (~ ! [X392 : subst,X393 : term,X394 : subst,X395 : subst] : (~ ($true = ((X390 @ X394 @ X393 @ (comp @ X392 @ X395)))) | ($true = ((X390 @ (comp @ X394 @ X392) @ (sub @ X393 @ X392) @ X395)))) | ~ ! [X396 : (subst > term > term)] : (($true = ((X390 @ id @ (lam @ (X396 @ sh @ one)) @ id))) | ~ ! [X399 : subst,X397 : term,X398 : subst] : (((X396 @ (comp @ X398 @ X399) @ (sub @ X397 @ X399))) = ((sub @ (X396 @ X398 @ X397) @ X399))) | ~ ! [X400 : term] : (~ (((X390 @ id @ X400 @ id)) = $true) | (((X390 @ id @ (X396 @ id @ X400) @ id)) = $true))) | ~ ! [X401 : term,X402 : subst,X403 : subst,X404 : subst] : (($true = ((X390 @ X402 @ X401 @ (comp @ X404 @ X403)))) | ~ ($true = ((X390 @ (comp @ X402 @ X404) @ (sub @ X401 @ X404) @ X403)))) | (((X390 @ id @ (lam @ X391) @ id)) = $true) | ~ ! [X405 : term] : (~ ($true = ((X390 @ id @ X405 @ id))) | ($true = ((X390 @ id @ (sub @ X391 @ (push @ X405 @ id)) @ id))))) => ! [X406 : (subst > term > subst > $o),X407 : term] : (~ ! [X408 : subst,X409 : subst,X410 : subst,X411 : term] : (~ ($true = ((X406 @ X408 @ X411 @ (comp @ X410 @ X409)))) | ($true = ((X406 @ (comp @ X408 @ X410) @ (sub @ X411 @ X410) @ X409)))) | ~ ! [X412 : term,X413 : term] : (~ (((X406 @ id @ X413 @ id)) = $true) | (((X406 @ id @ (ap @ (sub @ X413 @ id) @ X412) @ id)) = $true) | ~ (((X406 @ id @ X412 @ id)) = $true)) | ($true = ((X406 @ id @ X407 @ id))) | ~ ! [X414 : term,X415 : subst,X416 : subst,X417 : subst] : (($true = ((X406 @ X415 @ X414 @ (comp @ X417 @ X416)))) | ~ ($true = ((X406 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416)))) | ~ ! [X418 : term] : (~ ($true = ((var @ (sub @ X418 @ id)))) | ($true = ((X406 @ id @ X418 @ id)))) | ~ ! [X419 : (subst > term > term)] : (~ ! [X421 : subst,X420 : subst,X422 : term] : (((sub @ (X419 @ X420 @ X422) @ X421)) = ((X419 @ (comp @ X420 @ X421) @ (sub @ X422 @ X421)))) | ~ ! [X423 : term] : ((((X406 @ id @ (X419 @ id @ X423) @ id)) = $true) | ~ (((X406 @ id @ X423 @ id)) = $true)) | ($true = ((X406 @ id @ (lam @ (X419 @ sh @ one)) @ id)))))))) <=> (hoasinduction_lthm = $true)) & ((! [X424 : (subst > term > subst > $o)] : ~ ! [X425 : (term > $o)] : ~ ! [X426 : term] : (((X424 @ id @ X426 @ id)) = ((X425 @ X426))) => (! [X427 : term,X428 : (term > $o)] : (($true = ((X428 @ X427))) | ~ ! [X429 : term] : (~ ($true = ((var @ X429))) | (((X428 @ X429)) = $true)) | ~ ! [X430 : term] : (~ ! [X431 : term] : (~ ($true = ((X428 @ X431))) | (((X428 @ (sub @ X430 @ (push @ X431 @ id)))) = $true)) | ($true = ((X428 @ (lam @ X430))))) | ~ ! [X432 : term,X433 : term] : (~ ($true = ((X428 @ X432))) | ~ ($true = ((X428 @ X433))) | ($true = ((X428 @ (ap @ X432 @ X433)))))) => (! [X434 : term] : (((sub @ X434 @ id)) = X434) => (! [X435 : (term > $o),X436 : (subst > term > subst > $o),X437 : term] : (~ ! [X438 : term] : (((X435 @ X438)) = ((X436 @ id @ X438 @ id))) | ~ ! [X439 : (subst > term > term)] : (~ ! [X440 : term] : (~ (((X436 @ id @ X440 @ id)) = $true) | ($true = ((X436 @ id @ (X439 @ id @ X440) @ id)))) | (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) = $true) | ~ ! [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) = ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) | ($true = ((X435 @ (lam @ X437)))) | ~ ! [X444 : term] : (~ (((X435 @ X444)) = $true) | ($true = ((X435 @ (sub @ X437 @ (push @ X444 @ id))))))) => ! [X445 : (subst > term > subst > $o),X446 : term] : (~ ! [X447 : subst,X448 : term,X449 : subst,X450 : subst] : (~ ($true = ((X445 @ X447 @ X448 @ (comp @ X450 @ X449)))) | ($true = ((X445 @ (comp @ X447 @ X450) @ (sub @ X448 @ X450) @ X449)))) | ~ ! [X451 : term] : (~ (((var @ (sub @ X451 @ id))) = $true) | ($true = ((X445 @ id @ X451 @ id)))) | ~ ! [X452 : (subst > term > term)] : (~ ! [X453 : subst,X455 : term,X454 : subst] : (((sub @ (X452 @ X453 @ X455) @ X454)) = ((X452 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454)))) | ($true = ((X445 @ id @ (lam @ (X452 @ sh @ one)) @ id))) | ~ ! [X456 : term] : (~ ($true = ((X445 @ id @ X456 @ id))) | ($true = ((X445 @ id @ (X452 @ id @ X456) @ id))))) | ~ ! [X457 : term,X458 : term] : (~ (((X445 @ id @ X458 @ id)) = $true) | ~ ($true = ((X445 @ id @ X457 @ id))) | ($true = ((X445 @ id @ (ap @ (sub @ X457 @ id) @ X458) @ id)))) | ($true = ((X445 @ id @ X446 @ id))) | ~ ! [X459 : term,X460 : subst,X461 : subst,X462 : subst] : ((((X445 @ X461 @ X459 @ (comp @ X460 @ X462))) = $true) | ~ ($true = ((X445 @ (comp @ X461 @ X460) @ (sub @ X459 @ X460) @ X462))))))))) <=> (hoasinduction_lthm_3 = $true)) & (id = ((d2subst @ d_id))) & ((! [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) = X463) => (! [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) = X465) => (! [X468 : term,X467 : term] : ((X467 = X468) | (((lam @ X467)) != ((lam @ X468)))) => ! [X470 : (subst > term > term),X469 : term,X471 : subst,X472 : (subst > term > term)] : ((((lam @ (X470 @ sh @ one))) != ((lam @ (X472 @ sh @ one)))) | ~ ! [X475 : term,X474 : subst,X473 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) = ((sub @ (X472 @ X473 @ X475) @ X474))) | (((X470 @ X471 @ X469)) = ((X472 @ X471 @ X469))) | ~ ! [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) = ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476)))))))) <=> (hoaslaminj_lthm = $true)) & ((! [X479 : term] : (((sub @ X479 @ id)) = X479) => ! [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (~ ! [X483 : (subst > term > term)] : (~ ! [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) = ((sub @ (X483 @ X485 @ X486) @ X484))) | ~ ! [X487 : term] : (~ (((X481 @ id @ X487 @ id)) = $true) | (((X481 @ id @ (X483 @ id @ X487) @ id)) = $true)) | (((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) = $true)) | ~ ! [X488 : term] : (~ ($true = ((X482 @ X488))) | (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) = $true)) | ~ ! [X489 : term] : (((X481 @ id @ X489 @ id)) = ((X482 @ X489))) | ~ ! [X490 : subst,X491 : subst,X492 : subst,X493 : term] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) = $true) | ~ (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) = $true)) | ($true = ((X482 @ (lam @ X480)))) | ~ ! [X494 : term,X495 : subst,X496 : subst,X497 : subst] : (~ (((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) = $true) | ($true = ((X481 @ X495 @ X494 @ (comp @ X497 @ X496))))))) <=> (hoasinduction_lem3v2_lthm = $true)) & (pushprop_lem3v2 = $true) & ((! [X498 : term] : (((sub @ X498 @ id)) = X498) => (! [X499 : term,X500 : subst,X501 : (term > $o)] : (~ ! [X502 : term,X503 : term] : (~ ($true = ((X501 @ X503))) | (((X501 @ (ap @ X503 @ X502))) = $true) | ~ (((X501 @ X502)) = $true)) | ~ ! [X504 : term] : (~ ($true = ((var @ X504))) | ($true = ((X501 @ (sub @ X504 @ X500))))) | ~ ! [X505 : term] : ((((X501 @ (lam @ X505))) = $true) | ~ ! [X506 : term] : (($true = ((X501 @ (sub @ X505 @ (push @ X506 @ id))))) | ~ (((X501 @ X506)) = $true))) | ($true = ((X501 @ (sub @ X499 @ X500))))) => ! [X507 : term,X508 : (term > $o)] : (~ ! [X509 : term] : ((((X508 @ (lam @ X509))) = $true) | ~ ! [X510 : term] : (~ (((X508 @ X510)) = $true) | (((X508 @ (sub @ X509 @ (push @ X510 @ id)))) = $true))) | ~ ! [X511 : term] : ((((X508 @ X511)) = $true) | ~ (((var @ X511)) = $true)) | (((X508 @ X507)) = $true) | ~ ! [X512 : term,X513 : term] : (~ ($true = ((X508 @ X512))) | ($true = ((X508 @ (ap @ X512 @ X513)))) | ~ (((X508 @ X513)) = $true))))) <=> (induction2_lthm = $true)) & ((hoaslamnotap = $true) <=> ! [X516 : term,X514 : term,X515 : (subst > term > term)] : ((((ap @ (sub @ X516 @ id) @ X514)) != ((lam @ (X515 @ sh @ one)))) | ~ ! [X518 : subst,X517 : term,X519 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) = ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))))) & ((substmonoid = $true) <=> (! [X520 : subst] : (((comp @ X520 @ id)) = X520) & ! [X521 : subst] : (((comp @ id @ X521)) = X521))) & ((hoasapinj1_lthm = $true) <=> (! [X522 : term] : (((sub @ X522 @ id)) = X522) => (! [X524 : term,X526 : term,X525 : term,X523 : term] : ((X525 = X526) | (((ap @ X525 @ X523)) != ((ap @ X526 @ X524)))) => ! [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) != ((ap @ (sub @ X527 @ id) @ X528))) | (X527 = X529))))) & (lamnotvar = $true) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X531 : (subst > term > subst > $o),X532 : term] : (($true = ((X531 @ id @ X532 @ id))) | ~ ! [X533 : (subst > term > term)] : (($true = ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) | ~ ! [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) = $true) | ~ ($true = ((X531 @ id @ X534 @ id)))) | ~ ! [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) = ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) | ~ ! [X538 : term,X539 : term] : (($true = ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id))) | ~ ($true = ((X531 @ id @ X539 @ id))) | ~ ($true = ((X531 @ id @ X538 @ id))))) <=> (hoasinduction_no_psi_cond = $true))),
  inference(rectify,[],[f5])).
thf(f9,plain,(
  (ulamvarsh = $true) & ((apinj1 = $true) <=> ! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125))))) & (! [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 = X325) | (((ap @ (sub @ X324 @ id) @ X325)) != ((ap @ (sub @ X322 @ id) @ X323)))) <=> (hoasapinj2 = $true)) & ((substmonoid_lthm = $true) <=> (! [X326 : subst] : (((comp @ id @ X326)) = X326) => (! [X327 : subst] : (((comp @ X327 @ id)) = X327) => (! [X329 : subst] : (((comp @ X329 @ id)) = X329) & ! [X328 : subst] : (((comp @ id @ X328)) = X328))))) & (pushprop_lem1_gthm = $true) & (! [X217 : term] : (((sub @ X217 @ id)) = X217) <=> (termmset = $true)) & ((! [X277 : (subst > term > subst > $o)] : ~ ! [X278 : (term > $o)] : ~ ! [X279 : term] : (((X277 @ id @ X279 @ id)) = ((X278 @ X279))) => (! [X281 : term,X280 : (term > $o)] : (~ ! [X286 : term] : (($true = ((X280 @ X286))) | ($true != ((var @ X286)))) | ~ ! [X285 : term,X284 : term] : (($true != ((X280 @ X284))) | ($true = ((X280 @ (ap @ X285 @ X284)))) | ($true != ((X280 @ X285)))) | ($true = ((X280 @ X281))) | ~ ! [X282 : term] : (~ ! [X283 : term] : (($true = ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) | ($true != ((X280 @ X283)))) | ($true = ((X280 @ (lam @ X282)))))) => (! [X287 : term] : (((sub @ X287 @ id)) = X287) => (! [X288 : (subst > term > subst > $o),X289 : (term > $o),X290 : term] : (~ ! [X292 : term] : (($true != ((X289 @ X292))) | ($true = ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) | ~ ! [X293 : (subst > term > term)] : (~ ! [X297 : term,X295 : subst,X296 : subst] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) = ((sub @ (X293 @ X295 @ X297) @ X296))) | ($true = ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id))) | ~ ! [X294 : term] : ((((X288 @ id @ (X293 @ id @ X294) @ id)) = $true) | (((X288 @ id @ X294 @ id)) != $true))) | ~ ! [X291 : term] : (((X289 @ X291)) = ((X288 @ id @ X291 @ id))) | ($true = ((X289 @ (lam @ X290))))) => ! [X299 : (subst > term > subst > $o),X298 : term] : (($true = ((X299 @ id @ X298 @ id))) | ~ ! [X306 : term,X305 : term] : ((((X299 @ id @ X306 @ id)) != $true) | ($true = ((X299 @ id @ (ap @ (sub @ X306 @ id) @ X305) @ id))) | ($true != ((X299 @ id @ X305 @ id)))) | ~ ! [X300 : (subst > term > term)] : ((((X299 @ id @ (lam @ (X300 @ sh @ one)) @ id)) = $true) | ~ ! [X303 : term,X302 : subst,X301 : subst] : (((X300 @ (comp @ X301 @ X302) @ (sub @ X303 @ X302))) = ((sub @ (X300 @ X301 @ X303) @ X302))) | ~ ! [X304 : term] : (($true = ((X299 @ id @ (X300 @ id @ X304) @ id))) | ($true != ((X299 @ id @ X304 @ id)))))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ! [X167 : subst] : ? [X168 : d_subst] : (((d2subst @ X168)) = X167) & ((induction2lem_lthm = $true) <=> (! [X9 : subst,X8 : term] : (((sub @ one @ (push @ X8 @ X9))) = X8) => (! [X10 : term,X11 : subst] : (((comp @ sh @ (push @ X10 @ X11))) = X11) => (! [X12 : subst] : (((comp @ X12 @ id)) = X12) => (! [X14 : (term > $o),X13 : term] : (~ ! [X15 : term] : ((((var @ X15)) != $true) | ($true = ((X14 @ X15)))) | ($true = ((X14 @ X13))) | ~ ! [X16 : term] : ((((X14 @ (lam @ X16))) = $true) | (((X14 @ X16)) != $true)) | ~ ! [X18 : term,X17 : term] : ((((X14 @ X17)) != $true) | (((X14 @ X18)) != $true) | ($true = ((X14 @ (ap @ X18 @ X17)))))) => ! [X19 : subst,X21 : (term > $o),X20 : term] : (~ ! [X24 : term] : (($true != ((var @ X24))) | ($true = ((X21 @ (sub @ X24 @ X19))))) | ~ ! [X23 : term,X22 : term] : (($true != ((X21 @ X23))) | (((X21 @ (ap @ X23 @ X22))) = $true) | ($true != ((X21 @ X22)))) | ~ ! [X25 : term] : (($true = ((X21 @ (lam @ X25)))) | ~ ! [X26 : term] : ((((X21 @ (sub @ X25 @ (push @ X26 @ id)))) = $true) | ($true != ((X21 @ X26))))) | (((X21 @ (sub @ X20 @ X19))) = $true))))))) & (hoasapnotvar_lthm = $true) & (! [X220 : subst] : (((comp @ id @ X220)) = X220) <=> (axidl = $true)) & (! [X84 : term,X83 : (subst > term > subst > $o)] : (~ ! [X90 : term] : ((((X83 @ id @ X90 @ id)) != $true) | ($true = ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) | ~ ! [X85 : (subst > term > term)] : (~ ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88)))) | ~ ! [X86 : term] : ((((X83 @ id @ X86 @ id)) != $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) | ($true = ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id)))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id)))) <=> (hoasinduction_lem3aa = $true)) & ((pushprop_lem0 = $true) <=> ! [X35 : (term > $o),X36 : term,X34 : subst] : ~ ! [X37 : (term > $o)] : ~ ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & (! [X228 : (subst > term > subst > $o)] : ~ ! [X229 : (term > $o)] : ~ ! [X230 : term] : (((X229 @ X230)) = ((X228 @ id @ X230 @ id))) <=> (hoasinduction_lem0 = $true)) & ((! [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) = X221) => ! [X224 : term,X226 : (term > $o),X223 : subst,X225 : (term > $o)] : (~ ! [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) = ((X226 @ X227))) | ($true != ((X225 @ X224))) | ($true = ((X226 @ one))))) <=> (pushprop_lem1v2_lthm = $true)) & (axabs = $true) & (lamnotap != $true) & ((hoasapinj1_lthm = $true) <=> (! [X522 : term] : (((sub @ X522 @ id)) = X522) => (! [X524 : term,X526 : term,X525 : term,X523 : term] : ((X525 = X526) | (((ap @ X525 @ X523)) != ((ap @ X526 @ X524)))) => ! [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) != ((ap @ (sub @ X527 @ id) @ X528))) | (X527 = X529))))) & (hoasinduction_lem3_gthm = $true) & ((hoasinduction_lem3_lthm = $true) <=> (! [X39 : term] : (((sub @ X39 @ id)) = X39) => (! [X40 : (subst > term > subst > $o),X41 : term] : (~ ! [X43 : (subst > term > term)] : (~ ! [X47 : subst,X45 : term,X46 : subst] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) = ((sub @ (X43 @ X47 @ X45) @ X46))) | ~ ! [X44 : term] : (($true = ((X40 @ id @ (X43 @ id @ X44) @ id))) | ($true != ((X40 @ id @ X44 @ id)))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) | ~ ! [X42 : term] : (($true != ((X40 @ id @ X42 @ id))) | (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true)) | ($true = ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id)))) => ! [X48 : term,X49 : (subst > term > subst > $o)] : (~ ! [X63 : subst,X61 : subst,X60 : subst,X62 : term] : (($true = ((X49 @ (comp @ X63 @ X61) @ (sub @ X62 @ X61) @ X60))) | ($true != ((X49 @ X63 @ X62 @ (comp @ X61 @ X60))))) | ($true = ((X49 @ id @ (lam @ X48) @ id))) | ~ ! [X54 : subst,X51 : term,X52 : subst,X53 : subst] : (($true = ((X49 @ X53 @ X51 @ (comp @ X52 @ X54)))) | (((X49 @ (comp @ X53 @ X52) @ (sub @ X51 @ X52) @ X54)) != $true)) | ~ ! [X50 : term] : ((((X49 @ id @ X50 @ id)) != $true) | ($true = ((X49 @ id @ (sub @ X48 @ (push @ X50 @ id)) @ id)))) | ~ ! [X55 : (subst > term > term)] : (~ ! [X58 : subst,X56 : term,X57 : subst] : (((X55 @ (comp @ X58 @ X57) @ (sub @ X56 @ X57))) = ((sub @ (X55 @ X58 @ X56) @ X57))) | ~ ! [X59 : term] : (($true = ((X49 @ id @ (X55 @ id @ X59) @ id))) | (((X49 @ id @ X59 @ id)) != $true)) | (((X49 @ id @ (lam @ (X55 @ sh @ one)) @ id)) = $true)))))) & (hoaslamnotvar_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (! [X28 : (term > $o),X27 : subst,X30 : term,X29 : (term > $o)] : (($true != ((X29 @ X30))) | ~ ! [X31 : term] : (((X28 @ X31)) = ((X29 @ (sub @ X31 @ (push @ X30 @ X27))))) | (((X28 @ one)) = $true)) <=> (pushprop_lem1v2 = $true)) & (hoasinduction_lem2_gthm = $true) & (hoasinduction_gthm = $true) & (! [X250 : (subst > term > subst > $o),X249 : term,X251 : (term > $o)] : (~ ! [X254 : (subst > term > term)] : (~ ! [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) = ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255)))) | ($true = ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) | ~ ! [X258 : term] : (($true = ((X250 @ id @ (X254 @ id @ X258) @ id))) | ($true != ((X250 @ id @ X258 @ id))))) | ~ ! [X252 : term] : (((X250 @ id @ X252 @ id)) = ((X251 @ X252))) | ($true = ((X251 @ (lam @ X249)))) | ~ ! [X253 : term] : ((((X251 @ X253)) != $true) | ($true = ((X251 @ (sub @ X249 @ (push @ X253 @ id))))))) <=> (hoasinduction_lem3v2a = $true)) & (pushprop_lem3v2 = $true) & ((! [X424 : (subst > term > subst > $o)] : ~ ! [X425 : (term > $o)] : ~ ! [X426 : term] : (((X424 @ id @ X426 @ id)) = ((X425 @ X426))) => (! [X428 : (term > $o),X427 : term] : (~ ! [X429 : term] : ((((X428 @ X429)) = $true) | ($true != ((var @ X429)))) | ~ ! [X430 : term] : (($true = ((X428 @ (lam @ X430)))) | ~ ! [X431 : term] : (($true != ((X428 @ X431))) | (((X428 @ (sub @ X430 @ (push @ X431 @ id)))) = $true))) | ($true = ((X428 @ X427))) | ~ ! [X433 : term,X432 : term] : (($true != ((X428 @ X432))) | ($true = ((X428 @ (ap @ X432 @ X433)))) | ($true != ((X428 @ X433))))) => (! [X434 : term] : (((sub @ X434 @ id)) = X434) => (! [X436 : (subst > term > subst > $o),X435 : (term > $o),X437 : term] : (~ ! [X444 : term] : (($true = ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) | (((X435 @ X444)) != $true)) | ($true = ((X435 @ (lam @ X437)))) | ~ ! [X439 : (subst > term > term)] : ((((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) = $true) | ~ ! [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) = ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442)))) | ~ ! [X440 : term] : ((((X436 @ id @ X440 @ id)) != $true) | ($true = ((X436 @ id @ (X439 @ id @ X440) @ id))))) | ~ ! [X438 : term] : (((X435 @ X438)) = ((X436 @ id @ X438 @ id)))) => ! [X446 : term,X445 : (subst > term > subst > $o)] : (~ ! [X460 : subst,X461 : subst,X459 : term,X462 : subst] : (($true != ((X445 @ (comp @ X461 @ X460) @ (sub @ X459 @ X460) @ X462))) | (((X445 @ X461 @ X459 @ (comp @ X460 @ X462))) = $true)) | ~ ! [X451 : term] : (($true = ((X445 @ id @ X451 @ id))) | (((var @ (sub @ X451 @ id))) != $true)) | ~ ! [X458 : term,X457 : term] : (($true = ((X445 @ id @ (ap @ (sub @ X457 @ id) @ X458) @ id))) | (((X445 @ id @ X458 @ id)) != $true) | ($true != ((X445 @ id @ X457 @ id)))) | ~ ! [X452 : (subst > term > term)] : (~ ! [X453 : subst,X455 : term,X454 : subst] : (((sub @ (X452 @ X453 @ X455) @ X454)) = ((X452 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454)))) | ~ ! [X456 : term] : (($true = ((X445 @ id @ (X452 @ id @ X456) @ id))) | ($true != ((X445 @ id @ X456 @ id)))) | ($true = ((X445 @ id @ (lam @ (X452 @ sh @ one)) @ id)))) | ~ ! [X450 : subst,X448 : term,X447 : subst,X449 : subst] : (($true != ((X445 @ X447 @ X448 @ (comp @ X450 @ X449)))) | ($true = ((X445 @ (comp @ X447 @ X450) @ (sub @ X448 @ X450) @ X449)))) | ($true = ((X445 @ id @ X446 @ id)))))))) <=> (hoasinduction_lthm_3 = $true)) & (hoasinduction_lem1v2 = $true) & (apnotvar = $true) & (lamnotvar = $true) & (pushprop_lthm = $true) & (! [X259 : term] : (((sub @ X259 @ id)) = X259) <=> (axvarid = $true)) & (termmset_gthm = $true) & (hoasapinj1_gthm = $true) & ((axscons = $true) <=> ! [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) = X170)) & (axmap = $true) & (pushprop_lem2v2 = $true) & (hoasinduction_lem1_lthm = $true) & (! [X157 : term,X156 : term] : ((X156 = X157) | (((sub @ X157 @ sh)) != ((sub @ X156 @ sh)))) <=> (shinj = $true)) & ((induction = $true) <=> ! [X93 : (term > $o),X94 : term] : (~ ! [X96 : term,X95 : term] : (($true != ((X93 @ X95))) | ($true != ((X93 @ X96))) | ($true = ((X93 @ (ap @ X95 @ X96))))) | ~ ! [X97 : term] : (($true = ((X93 @ X97))) | (((var @ X97)) != $true)) | (((X93 @ X94)) = $true) | ~ ! [X98 : term] : (($true = ((X93 @ (lam @ X98)))) | ($true != ((X93 @ X98)))))) & (! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) <=> (hoasapinj1 = $true)) & ((hoaslaminj = $true) <=> ! [X172 : (subst > term > term),X174 : subst,X171 : (subst > term > term),X173 : term] : ((((lam @ (X171 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((X172 @ X174 @ X173)) = ((X171 @ X174 @ X173))) | ~ ! [X179 : subst,X180 : term,X178 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) = ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) | ~ ! [X176 : term,X177 : subst,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) = ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))))) & ((hoasinduction_lthm = $true) <=> (! [X370 : term,X371 : (term > $o)] : (~ ! [X372 : term] : (($true = ((X371 @ (lam @ X372)))) | ~ ! [X373 : term] : ((((X371 @ (sub @ X372 @ (push @ X373 @ id)))) = $true) | (((X371 @ X373)) != $true))) | ~ ! [X374 : term] : ((((var @ X374)) != $true) | ($true = ((X371 @ X374)))) | ~ ! [X375 : term,X376 : term] : (($true = ((X371 @ (ap @ X376 @ X375)))) | (((X371 @ X375)) != $true) | ($true != ((X371 @ X376)))) | (((X371 @ X370)) = $true)) => (! [X378 : (subst > term > subst > $o),X377 : term,X379 : term] : (~ ! [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) != $true) | (((X378 @ id @ X381 @ id)) != $true) | (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) = $true)) | ~ ! [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) != $true) | ($true = ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) | ($true = ((X378 @ id @ (ap @ X377 @ X379) @ id))) | ~ ! [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true != ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) | ($true = ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) | ($true != ((X378 @ id @ X379 @ id))) | ($true != ((X378 @ id @ X377 @ id)))) => (! [X390 : (subst > term > subst > $o),X391 : term] : (~ ! [X405 : term] : (($true = ((X390 @ id @ (sub @ X391 @ (push @ X405 @ id)) @ id))) | ($true != ((X390 @ id @ X405 @ id)))) | ~ ! [X402 : subst,X403 : subst,X404 : subst,X401 : term] : (($true != ((X390 @ (comp @ X402 @ X404) @ (sub @ X401 @ X404) @ X403))) | ($true = ((X390 @ X402 @ X401 @ (comp @ X404 @ X403))))) | (((X390 @ id @ (lam @ X391) @ id)) = $true) | ~ ! [X393 : term,X394 : subst,X395 : subst,X392 : subst] : (($true != ((X390 @ X394 @ X393 @ (comp @ X392 @ X395)))) | ($true = ((X390 @ (comp @ X394 @ X392) @ (sub @ X393 @ X392) @ X395)))) | ~ ! [X396 : (subst > term > term)] : (~ ! [X399 : subst,X397 : term,X398 : subst] : (((X396 @ (comp @ X398 @ X399) @ (sub @ X397 @ X399))) = ((sub @ (X396 @ X398 @ X397) @ X399))) | ~ ! [X400 : term] : ((((X390 @ id @ (X396 @ id @ X400) @ id)) = $true) | (((X390 @ id @ X400 @ id)) != $true)) | ($true = ((X390 @ id @ (lam @ (X396 @ sh @ one)) @ id))))) => ! [X407 : term,X406 : (subst > term > subst > $o)] : (~ ! [X416 : subst,X417 : subst,X414 : term,X415 : subst] : (($true = ((X406 @ X415 @ X414 @ (comp @ X417 @ X416)))) | ($true != ((X406 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416)))) | ~ ! [X411 : term,X410 : subst,X409 : subst,X408 : subst] : (($true = ((X406 @ (comp @ X408 @ X410) @ (sub @ X411 @ X410) @ X409))) | ($true != ((X406 @ X408 @ X411 @ (comp @ X410 @ X409))))) | ~ ! [X413 : term,X412 : term] : ((((X406 @ id @ X413 @ id)) != $true) | (((X406 @ id @ X412 @ id)) != $true) | (((X406 @ id @ (ap @ (sub @ X413 @ id) @ X412) @ id)) = $true)) | ~ ! [X419 : (subst > term > term)] : (~ ! [X421 : subst,X420 : subst,X422 : term] : (((sub @ (X419 @ X420 @ X422) @ X421)) = ((X419 @ (comp @ X420 @ X421) @ (sub @ X422 @ X421)))) | ~ ! [X423 : term] : ((((X406 @ id @ (X419 @ id @ X423) @ id)) = $true) | (((X406 @ id @ X423 @ id)) != $true)) | ($true = ((X406 @ id @ (lam @ (X419 @ sh @ one)) @ id)))) | ($true = ((X406 @ id @ X407 @ id))) | ~ ! [X418 : term] : (($true != ((var @ (sub @ X418 @ id)))) | ($true = ((X406 @ id @ X418 @ id))))))))) & (pushprop_lem2v2_gthm = $true) & (hoasapnotvar = $true) & ((! [X498 : term] : (((sub @ X498 @ id)) = X498) => (! [X500 : subst,X499 : term,X501 : (term > $o)] : (~ ! [X505 : term] : ((((X501 @ (lam @ X505))) = $true) | ~ ! [X506 : term] : (($true = ((X501 @ (sub @ X505 @ (push @ X506 @ id))))) | (((X501 @ X506)) != $true))) | ~ ! [X504 : term] : (($true != ((var @ X504))) | ($true = ((X501 @ (sub @ X504 @ X500))))) | ~ ! [X502 : term,X503 : term] : ((((X501 @ (ap @ X503 @ X502))) = $true) | (((X501 @ X502)) != $true) | ($true != ((X501 @ X503)))) | ($true = ((X501 @ (sub @ X499 @ X500))))) => ! [X508 : (term > $o),X507 : term] : (~ ! [X509 : term] : (~ ! [X510 : term] : ((((X508 @ (sub @ X509 @ (push @ X510 @ id)))) = $true) | (((X508 @ X510)) != $true)) | (((X508 @ (lam @ X509))) = $true)) | ~ ! [X511 : term] : ((((X508 @ X511)) = $true) | (((var @ X511)) != $true)) | ~ ! [X512 : term,X513 : term] : (($true = ((X508 @ (ap @ X512 @ X513)))) | (((X508 @ X513)) != $true) | ($true != ((X508 @ X512)))) | (((X508 @ X507)) = $true)))) <=> (induction2_lthm = $true)) & (((d2subst @ d_id)) = sh) & ((hoasinduction_lem3aaa = $true) <=> ! [X130 : term,X129 : (subst > term > subst > $o)] : (~ ! [X132 : term,X133 : (subst > term > term)] : ((((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) = $true) | ~ ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139))) | ~ ! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) | ~ ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | (((X129 @ id @ X140 @ id)) != $true))) | (((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X131 : term] : (($true != ((X129 @ id @ X131 @ id))) | (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) = $true)))) & (! [X367 : subst,X365 : (term > $o),X366 : term] : ~ ! [X368 : (term > $o)] : ~ ! [X369 : term] : (((X368 @ X369)) = ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lthm_orig = $true) & (hoasinduction_lem1_gthm = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X348 : (subst > term > subst > $o),X349 : (term > $o),X347 : term] : (~ ! [X354 : (subst > term > term)] : (~ ! [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) = $true) | (((X348 @ id @ X355 @ id)) != $true)) | ~ ! [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) = ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358)))) | ($true = ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id)))) | (((X349 @ (lam @ X347))) = $true) | ~ ! [X363 : term] : (($true = ((X349 @ (sub @ X347 @ (push @ X363 @ id))))) | ($true != ((X349 @ X363)))) | ~ ! [X364 : term] : (((X349 @ X364)) = ((X348 @ id @ X364 @ id))) | ~ ! [X361 : term,X360 : subst,X362 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) != $true) | ($true = ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) | ~ ! [X351 : subst,X353 : term,X352 : subst,X350 : subst] : (($true = ((X348 @ X350 @ X353 @ (comp @ X352 @ X351)))) | ($true != ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351)))))) & ((hoasapinj2_lthm = $true) <=> (! [X64 : term,X65 : term,X66 : term,X67 : term] : ((X64 = X66) | (((ap @ X67 @ X66)) != ((ap @ X65 @ X64)))) => ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))))) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((termmset_lthm = $true) <=> (! [X32 : term] : (((sub @ X32 @ id)) = X32) => ! [X33 : term] : (((sub @ X33 @ id)) = X33))) & (axassoc = $true) & (pushprop_lem0_gthm = $true) & (! [X231 : term,X232 : (subst > term > subst > $o)] : (~ ! [X243 : subst,X242 : subst,X245 : term,X244 : subst] : (($true = ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) | ($true != ((X232 @ X244 @ X245 @ (comp @ X243 @ X242))))) | ($true = ((X232 @ id @ (lam @ X231) @ id))) | ~ ! [X235 : subst,X234 : subst,X233 : term,X236 : subst] : ((((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) = $true) | ($true != ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235)))) | ~ ! [X237 : (subst > term > term)] : (~ ! [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) = ((sub @ (X237 @ X239 @ X241) @ X240))) | ~ ! [X238 : term] : ((((X232 @ id @ X238 @ id)) != $true) | (((X232 @ id @ (X237 @ id @ X238) @ id)) = $true)) | (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) = $true)) | ~ ! [X246 : term] : ((((X232 @ id @ X246 @ id)) != $true) | (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) = $true))) <=> (hoasinduction_lem3 = $true)) & (! [X181 : subst] : (((comp @ X181 @ id)) = X181) <=> (axidr = $true)) & (ulamvarind = $true) & (((var @ (d2term @ d_one))) != $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & ((! [X262 : term] : ~ ! [X263 : (subst > term > term)] : ~ ! [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) = ((X263 @ X264 @ X265))) => (! [X266 : term] : (((sub @ X266 @ id)) = X266) => ! [X268 : (subst > term > subst > $o),X267 : (term > $o),X269 : term] : (($true = ((X267 @ (lam @ X269)))) | ~ ! [X272 : (subst > term > term)] : (~ ! [X276 : term] : ((((X268 @ id @ X276 @ id)) != $true) | ($true = ((X268 @ id @ (X272 @ id @ X276) @ id)))) | ~ ! [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) = ((sub @ (X272 @ X273 @ X275) @ X274))) | ($true = ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id)))) | ~ ! [X270 : term] : (((X268 @ id @ X270 @ id)) = ((X267 @ X270))) | ~ ! [X271 : term] : (($true != ((X267 @ X271))) | ($true = ((X267 @ (sub @ X269 @ (push @ X271 @ id))))))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasapinj2_gthm = $true) & (axclos = $true) & ! [X169 : d_term] : (d_one = X169) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoaslamnotap_lthm = $true) & (pushprop = $true) & (pushprop_lem3v2_lthm = $true) & (((d2term @ d_one)) = one) & ! [X142 : d_term,X141 : d_term] : ((((d2term @ X141)) = ((d2term @ X142))) => (X141 = X142)) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & ((laminj = $true) <=> ! [X219 : term,X218 : term] : ((X218 = X219) | (((lam @ X219)) != ((lam @ X218))))) & (pushprop_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (! [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true != ((X215 @ X214))) | (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) = $true)) <=> (pushprop_lem1 = $true)) & (induction2lem_gthm = $true) & (! [X330 : term,X331 : term,X332 : (subst > term > subst > $o)] : (($true = ((X332 @ id @ (ap @ X331 @ X330) @ id))) | ~ ! [X340 : subst,X339 : term,X337 : subst,X338 : subst] : (($true = ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) | (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) != $true)) | ($true != ((X332 @ id @ X331 @ id))) | ~ ! [X335 : subst,X334 : term,X336 : subst,X333 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) != $true) | ($true = ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) | ~ ! [X341 : term,X342 : term] : ((((X332 @ id @ X342 @ id)) != $true) | (((X332 @ id @ X341 @ id)) != $true) | (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) = $true)) | (((X332 @ id @ X330 @ id)) != $true)) <=> (hoasinduction_lem2 = $true)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X532 : term,X531 : (subst > term > subst > $o)] : (~ ! [X533 : (subst > term > term)] : (~ ! [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) = $true) | ($true != ((X531 @ id @ X534 @ id)))) | ($true = ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) | ~ ! [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) = ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) | ~ ! [X539 : term,X538 : term] : (($true != ((X531 @ id @ X539 @ id))) | ($true != ((X531 @ id @ X538 @ id))) | ($true = ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id)))) | ($true = ((X531 @ id @ X532 @ id))))) & (hoasinduction_lem3b_gthm = $true) & (substmonoid_gthm = $true) & (hoasinduction_lem1 = $true) & (hoasinduction_lem2_lthm = $true) & (! [X0 : (subst > term > subst > $o),X1 : term] : (~ ! [X2 : (subst > term > term)] : (~ ! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) | ~ ! [X6 : term] : (($true = ((X0 @ id @ (X2 @ id @ X6) @ id))) | (((X0 @ id @ X6 @ id)) != $true)) | (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true)) | ~ ! [X7 : term] : ((((X0 @ id @ X7 @ id)) != $true) | ($true = ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) | ($true = ((X0 @ id @ (lam @ X1) @ id)))) <=> (hoasinduction_lem3a = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X80 : (subst > term > subst > $o)] : ~ ! [X81 : (term > $o)] : ~ ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82)))) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) = ((d2subst @ X91))) => (X91 = X92)) & (induction2_gthm = $true) & ((hoaslamnotap = $true) <=> ! [X516 : term,X514 : term,X515 : (subst > term > term)] : ((((ap @ (sub @ X516 @ id) @ X514)) != ((lam @ (X515 @ sh @ one)))) | ~ ! [X518 : subst,X517 : term,X519 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) = ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))))) & (hoaslaminj_gthm = $true) & ((substmonoid = $true) <=> (! [X520 : subst] : (((comp @ X520 @ id)) = X520) & ! [X521 : subst] : (((comp @ id @ X521)) = X521))) & (! [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) = X260) <=> (axvarcons = $true)) & (hoasapnotvar_gthm = $true) & (hoaslamnotvar = $true) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X479 : term] : (((sub @ X479 @ id)) = X479) => ! [X481 : (subst > term > subst > $o),X480 : term,X482 : (term > $o)] : (~ ! [X490 : subst,X493 : term,X491 : subst,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) = $true) | (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) != $true)) | ($true = ((X482 @ (lam @ X480)))) | ~ ! [X483 : (subst > term > term)] : (~ ! [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) = ((sub @ (X483 @ X485 @ X486) @ X484))) | ~ ! [X487 : term] : ((((X481 @ id @ X487 @ id)) != $true) | (((X481 @ id @ (X483 @ id @ X487) @ id)) = $true)) | (((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) = $true)) | ~ ! [X488 : term] : ((((X482 @ (sub @ X480 @ (push @ X488 @ id)))) = $true) | ($true != ((X482 @ X488)))) | ~ ! [X489 : term] : (((X481 @ id @ X489 @ id)) = ((X482 @ X489))) | ~ ! [X496 : subst,X497 : subst,X494 : term,X495 : subst] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) != $true) | ($true = ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))))) & (id = ((d2subst @ d_id))) & ((hoasinduction_lem2v2 = $true) <=> ! [X307 : term,X309 : (subst > term > subst > $o),X310 : (term > $o),X308 : term] : (~ ! [X320 : subst,X321 : term,X318 : subst,X319 : subst] : (($true != ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) | ($true = ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) | ~ ! [X313 : term,X312 : term] : (($true != ((X309 @ id @ X313 @ id))) | (((X309 @ id @ X312 @ id)) != $true) | (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) = $true)) | (((X310 @ X307)) != $true) | ($true = ((X310 @ (ap @ X307 @ X308)))) | ~ ! [X311 : term] : (((X309 @ id @ X311 @ id)) = ((X310 @ X311))) | ~ ! [X315 : subst,X316 : term,X314 : subst,X317 : subst] : (($true != ((X309 @ X315 @ X316 @ (comp @ X317 @ X314)))) | ($true = ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314)))) | (((X310 @ X308)) != $true))) & (pushprop_lem2v2_lthm = $true) & (! [X165 : term] : ~ ! [X166 : (subst > term > term)] : (((X166 @ sh @ one)) != ((sub @ X165 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((induction2lem = $true) <=> ! [X73 : (term > $o),X72 : subst,X74 : term] : (($true = ((X73 @ (sub @ X74 @ X72)))) | ~ ! [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) = $true) | (((var @ X75)) != $true)) | ~ ! [X79 : term,X78 : term] : ((((X73 @ (ap @ X78 @ X79))) = $true) | (((X73 @ X78)) != $true) | ($true != ((X73 @ X79)))) | ~ ! [X76 : term] : (($true = ((X73 @ (lam @ X76)))) | ~ ! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ($true != ((X73 @ X77))))))) & ((! [X101 : term] : (((sub @ X101 @ id)) = X101) => (! [X102 : (subst > term > subst > $o),X103 : term] : (~ ! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ~ ! [X106 : term] : ((((X102 @ id @ X106 @ id)) != $true) | (((X102 @ id @ (X105 @ id @ X106) @ id)) = $true)) | ~ ! [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) = ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) | ~ ! [X104 : term] : ((((X102 @ id @ X104 @ id)) != $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id)))) | ($true = ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id)))) => ! [X111 : (subst > term > subst > $o),X110 : term] : (~ ! [X112 : term] : (($true != ((X111 @ id @ X112 @ id))) | ($true = ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ~ ! [X113 : (subst > term > term)] : (~ ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))) | ($true = ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) | ~ ! [X114 : term] : (($true = ((X111 @ id @ (X113 @ id @ X114) @ id))) | (((X111 @ id @ X114 @ id)) != $true)))))) <=> (hoasinduction_lem3a_lthm = $true)) & (! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) <=> (apinj2 = $true)) & (axvarshift = $true) & (hoasinduction_lem2v2_gthm = $true) & (! [X195 : (subst > term > subst > $o),X194 : term] : (~ ! [X197 : (subst > term > term)] : (~ ! [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) = $true) | (((X195 @ id @ X198 @ id)) != $true)) | ($true = ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) | ~ ! [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) = ((sub @ (X197 @ X200 @ X201) @ X199)))) | ~ ! [X204 : subst,X202 : subst,X203 : subst,X205 : term] : ((((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) != $true) | (((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) = $true)) | (((X195 @ id @ X194 @ id)) = $true) | ~ ! [X211 : subst,X210 : subst,X209 : term,X208 : subst] : (($true = ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) | ($true != ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) | ~ ! [X206 : term,X207 : term] : (($true != ((X195 @ id @ X206 @ id))) | ($true != ((X195 @ id @ X207 @ id))) | ($true = ((X195 @ id @ (ap @ (sub @ X206 @ id) @ X207) @ id)))) | ~ ! [X196 : term] : (($true = ((X195 @ id @ X196 @ id))) | ($true != ((var @ (sub @ X196 @ id)))))) <=> (hoasinduction = $true)) & (axapp = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X247 : term] : ~ ! [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) != ((X248 @ sh @ one)))) & ((pushprop_lem1_lthm = $true) <=> (! [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) = X147) => (! [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) = X150) => ! [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true) | (((X153 @ X152)) != $true))))) & ! [X118 : d_subst] : (d_id = X118) & (hoaslamnotvar_lthm = $true) & (! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) <=> (axshiftcons = $true)) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (! [X343 : term] : ~ ! [X344 : (subst > term > term)] : ~ ! [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) = ((X344 @ X346 @ X345))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((! [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) = X463) => (! [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) = X465) => (! [X468 : term,X467 : term] : ((X467 = X468) | (((lam @ X467)) != ((lam @ X468)))) => ! [X470 : (subst > term > term),X469 : term,X471 : subst,X472 : (subst > term > term)] : ((((lam @ (X470 @ sh @ one))) != ((lam @ (X472 @ sh @ one)))) | ~ ! [X475 : term,X474 : subst,X473 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) = ((sub @ (X472 @ X473 @ X475) @ X474))) | (((X470 @ X471 @ X469)) = ((X472 @ X471 @ X469))) | ~ ! [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) = ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476)))))))) <=> (hoaslaminj_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X187 : term,X186 : (subst > term > subst > $o)] : (~ ! [X188 : (subst > term > term)] : (~ ! [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X188 @ X191 @ X189) @ X190))) | ($true = ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id))) | ~ ! [X192 : term] : (($true = ((X186 @ id @ (X188 @ id @ X192) @ id))) | ($true != ((X186 @ id @ X192 @ id))))) | (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X193 : term] : (($true != ((X186 @ id @ X193 @ id))) | (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) = $true)))) & (! [X182 : term] : ~ ! [X183 : (subst > term > term)] : ~ ! [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) = ((X183 @ X184 @ X185))) <=> (hoasinduction_lem3v2_f = $true)) & ((induction2 = $true) <=> ! [X158 : term,X159 : (term > $o)] : (~ ! [X160 : term,X161 : term] : ((((X159 @ X160)) != $true) | ($true = ((X159 @ (ap @ X160 @ X161)))) | (((X159 @ X161)) != $true)) | ($true = ((X159 @ X158))) | ~ ! [X162 : term] : (($true = ((X159 @ X162))) | (((var @ X162)) != $true)) | ~ ! [X163 : term] : (~ ! [X164 : term] : (($true = ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) | ($true != ((X159 @ X164)))) | (((X159 @ (lam @ X163))) = $true)))) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one))))),
  inference(flattening,[],[f8])).
thf(f10,plain,(
  (ulamvarsh = $true) & ((apinj1 = $true) <=> ! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125))))) & (! [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 = X325) | (((ap @ (sub @ X324 @ id) @ X325)) != ((ap @ (sub @ X322 @ id) @ X323)))) <=> (hoasapinj2 = $true)) & ((substmonoid_lthm = $true) <=> (((! [X329 : subst] : (((comp @ X329 @ id)) = X329) & ! [X328 : subst] : (((comp @ id @ X328)) = X328)) | ? [X327 : subst] : (((comp @ X327 @ id)) != X327)) | ? [X326 : subst] : (((comp @ id @ X326)) != X326))) & (pushprop_lem1_gthm = $true) & (! [X217 : term] : (((sub @ X217 @ id)) = X217) <=> (termmset = $true)) & (((((! [X299 : (subst > term > subst > $o),X298 : term] : (? [X305 : term,X306 : term] : (($true = ((X299 @ id @ X305 @ id))) & ($true != ((X299 @ id @ (ap @ (sub @ X306 @ id) @ X305) @ id))) & (((X299 @ id @ X306 @ id)) = $true)) | ($true = ((X299 @ id @ X298 @ id))) | ? [X300 : (subst > term > term)] : (! [X304 : term] : (($true = ((X299 @ id @ (X300 @ id @ X304) @ id))) | ($true != ((X299 @ id @ X304 @ id)))) & (((X299 @ id @ (lam @ (X300 @ sh @ one)) @ id)) != $true) & ! [X303 : term,X302 : subst,X301 : subst] : (((X300 @ (comp @ X301 @ X302) @ (sub @ X303 @ X302))) = ((sub @ (X300 @ X301 @ X303) @ X302))))) | ? [X290 : term,X289 : (term > $o),X288 : (subst > term > subst > $o)] : (! [X293 : (subst > term > term)] : (? [X296 : subst,X295 : subst,X297 : term] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) != ((sub @ (X293 @ X295 @ X297) @ X296))) | ? [X294 : term] : ((((X288 @ id @ X294 @ id)) = $true) & (((X288 @ id @ (X293 @ id @ X294) @ id)) != $true)) | ($true = ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id)))) & ! [X291 : term] : (((X289 @ X291)) = ((X288 @ id @ X291 @ id))) & ! [X292 : term] : (($true != ((X289 @ X292))) | ($true = ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) & ($true != ((X289 @ (lam @ X290)))))) | ? [X287 : term] : (((sub @ X287 @ id)) != X287)) | ? [X281 : term,X280 : (term > $o)] : (! [X285 : term,X284 : term] : (($true != ((X280 @ X284))) | ($true = ((X280 @ (ap @ X285 @ X284)))) | ($true != ((X280 @ X285)))) & ! [X286 : term] : (($true = ((X280 @ X286))) | ($true != ((var @ X286)))) & ($true != ((X280 @ X281))) & ! [X282 : term] : (($true = ((X280 @ (lam @ X282)))) | ? [X283 : term] : (($true != ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) & ($true = ((X280 @ X283))))))) | ? [X277 : (subst > term > subst > $o)] : ! [X278 : (term > $o)] : ? [X279 : term] : (((X277 @ id @ X279 @ id)) != ((X278 @ X279)))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ! [X167 : subst] : ? [X168 : d_subst] : (((d2subst @ X168)) = X167) & ((induction2lem_lthm = $true) <=> ((((! [X21 : (term > $o),X20 : term,X19 : subst] : (? [X25 : term] : (! [X26 : term] : ((((X21 @ (sub @ X25 @ (push @ X26 @ id)))) = $true) | ($true != ((X21 @ X26)))) & ($true != ((X21 @ (lam @ X25))))) | ? [X22 : term,X23 : term] : ((((X21 @ (ap @ X23 @ X22))) != $true) & ($true = ((X21 @ X22))) & ($true = ((X21 @ X23)))) | (((X21 @ (sub @ X20 @ X19))) = $true) | ? [X24 : term] : (($true = ((var @ X24))) & ($true != ((X21 @ (sub @ X24 @ X19)))))) | ? [X14 : (term > $o),X13 : term] : (($true != ((X14 @ X13))) & ! [X16 : term] : ((((X14 @ (lam @ X16))) = $true) | (((X14 @ X16)) != $true)) & ! [X18 : term,X17 : term] : ((((X14 @ X17)) != $true) | (((X14 @ X18)) != $true) | ($true = ((X14 @ (ap @ X18 @ X17))))) & ! [X15 : term] : ((((var @ X15)) != $true) | ($true = ((X14 @ X15)))))) | ? [X12 : subst] : (((comp @ X12 @ id)) != X12)) | ? [X10 : term,X11 : subst] : (((comp @ sh @ (push @ X10 @ X11))) != X11)) | ? [X8 : term,X9 : subst] : (((sub @ one @ (push @ X8 @ X9))) != X8))) & (hoasapnotvar_lthm = $true) & (! [X220 : subst] : (((comp @ id @ X220)) = X220) <=> (axidl = $true)) & (! [X84 : term,X83 : (subst > term > subst > $o)] : (? [X90 : term] : ((((X83 @ id @ X90 @ id)) = $true) & ($true != ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) | ? [X85 : (subst > term > term)] : (! [X86 : term] : ((((X83 @ id @ X86 @ id)) != $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) & ($true != ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) & ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id)))) <=> (hoasinduction_lem3aa = $true)) & ((pushprop_lem0 = $true) <=> ! [X36 : term,X35 : (term > $o),X34 : subst] : ? [X37 : (term > $o)] : ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & ((hoasinduction_lem0 = $true) <=> ! [X228 : (subst > term > subst > $o)] : ? [X229 : (term > $o)] : ! [X230 : term] : (((X229 @ X230)) = ((X228 @ id @ X230 @ id)))) & ((! [X223 : subst,X226 : (term > $o),X225 : (term > $o),X224 : term] : (? [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) != ((X226 @ X227))) | ($true != ((X225 @ X224))) | ($true = ((X226 @ one)))) | ? [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) != X221)) <=> (pushprop_lem1v2_lthm = $true)) & (axabs = $true) & (lamnotap != $true) & ((hoasapinj1_lthm = $true) <=> ((! [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) != ((ap @ (sub @ X527 @ id) @ X528))) | (X527 = X529)) | ? [X524 : term,X525 : term,X526 : term,X523 : term] : ((X525 != X526) & (((ap @ X525 @ X523)) = ((ap @ X526 @ X524))))) | ? [X522 : term] : (((sub @ X522 @ id)) != X522))) & (hoasinduction_lem3_gthm = $true) & ((hoasinduction_lem3_lthm = $true) <=> ((! [X49 : (subst > term > subst > $o),X48 : term] : (? [X51 : term,X53 : subst,X52 : subst,X54 : subst] : (($true != ((X49 @ X53 @ X51 @ (comp @ X52 @ X54)))) & (((X49 @ (comp @ X53 @ X52) @ (sub @ X51 @ X52) @ X54)) = $true)) | ? [X63 : subst,X61 : subst,X62 : term,X60 : subst] : (($true != ((X49 @ (comp @ X63 @ X61) @ (sub @ X62 @ X61) @ X60))) & ($true = ((X49 @ X63 @ X62 @ (comp @ X61 @ X60))))) | ($true = ((X49 @ id @ (lam @ X48) @ id))) | ? [X55 : (subst > term > term)] : (! [X59 : term] : (($true = ((X49 @ id @ (X55 @ id @ X59) @ id))) | (((X49 @ id @ X59 @ id)) != $true)) & ! [X58 : subst,X56 : term,X57 : subst] : (((X55 @ (comp @ X58 @ X57) @ (sub @ X56 @ X57))) = ((sub @ (X55 @ X58 @ X56) @ X57))) & (((X49 @ id @ (lam @ (X55 @ sh @ one)) @ id)) != $true)) | ? [X50 : term] : (($true != ((X49 @ id @ (sub @ X48 @ (push @ X50 @ id)) @ id))) & (((X49 @ id @ X50 @ id)) = $true))) | ? [X40 : (subst > term > subst > $o),X41 : term] : (! [X43 : (subst > term > term)] : (? [X47 : subst,X46 : subst,X45 : term] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) != ((sub @ (X43 @ X47 @ X45) @ X46))) | ? [X44 : term] : (($true = ((X40 @ id @ X44 @ id))) & ($true != ((X40 @ id @ (X43 @ id @ X44) @ id)))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) & ! [X42 : term] : (($true != ((X40 @ id @ X42 @ id))) | (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true)) & ($true != ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id))))) | ? [X39 : term] : (((sub @ X39 @ id)) != X39))) & (hoaslamnotvar_gthm = $true) & (hoasinduction_lem3v2_gthm = $true) & (! [X27 : subst,X28 : (term > $o),X30 : term,X29 : (term > $o)] : (($true != ((X29 @ X30))) | (((X28 @ one)) = $true) | ? [X31 : term] : (((X28 @ X31)) != ((X29 @ (sub @ X31 @ (push @ X30 @ X27)))))) <=> (pushprop_lem1v2 = $true)) & (hoasinduction_lem2_gthm = $true) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X250 : (subst > term > subst > $o),X251 : (term > $o),X249 : term] : (? [X253 : term] : ((((X251 @ X253)) = $true) & ($true != ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) | ($true = ((X251 @ (lam @ X249)))) | ? [X254 : (subst > term > term)] : (($true != ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) & ! [X258 : term] : (($true = ((X250 @ id @ (X254 @ id @ X258) @ id))) | ($true != ((X250 @ id @ X258 @ id)))) & ! [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) = ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255))))) | ? [X252 : term] : (((X250 @ id @ X252 @ id)) != ((X251 @ X252))))) & (pushprop_lem3v2 = $true) & (((((! [X446 : term,X445 : (subst > term > subst > $o)] : (? [X462 : subst,X461 : subst,X460 : subst,X459 : term] : ((((X445 @ X461 @ X459 @ (comp @ X460 @ X462))) != $true) & ($true = ((X445 @ (comp @ X461 @ X460) @ (sub @ X459 @ X460) @ X462)))) | ? [X447 : subst,X449 : subst,X450 : subst,X448 : term] : (($true != ((X445 @ (comp @ X447 @ X450) @ (sub @ X448 @ X450) @ X449))) & ($true = ((X445 @ X447 @ X448 @ (comp @ X450 @ X449))))) | ? [X452 : (subst > term > term)] : (! [X456 : term] : (($true = ((X445 @ id @ (X452 @ id @ X456) @ id))) | ($true != ((X445 @ id @ X456 @ id)))) & ($true != ((X445 @ id @ (lam @ (X452 @ sh @ one)) @ id))) & ! [X453 : subst,X455 : term,X454 : subst] : (((sub @ (X452 @ X453 @ X455) @ X454)) = ((X452 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454))))) | ? [X457 : term,X458 : term] : (($true = ((X445 @ id @ X457 @ id))) & ($true != ((X445 @ id @ (ap @ (sub @ X457 @ id) @ X458) @ id))) & (((X445 @ id @ X458 @ id)) = $true)) | ? [X451 : term] : (($true != ((X445 @ id @ X451 @ id))) & (((var @ (sub @ X451 @ id))) = $true)) | ($true = ((X445 @ id @ X446 @ id)))) | ? [X435 : (term > $o),X437 : term,X436 : (subst > term > subst > $o)] : (($true != ((X435 @ (lam @ X437)))) & ! [X444 : term] : (($true = ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) | (((X435 @ X444)) != $true)) & ! [X439 : (subst > term > term)] : (? [X440 : term] : ((((X436 @ id @ X440 @ id)) = $true) & ($true != ((X436 @ id @ (X439 @ id @ X440) @ id)))) | (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) = $true) | ? [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) != ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) & ! [X438 : term] : (((X435 @ X438)) = ((X436 @ id @ X438 @ id))))) | ? [X434 : term] : (((sub @ X434 @ id)) != X434)) | ? [X427 : term,X428 : (term > $o)] : (! [X433 : term,X432 : term] : (($true != ((X428 @ X432))) | ($true = ((X428 @ (ap @ X432 @ X433)))) | ($true != ((X428 @ X433)))) & ! [X429 : term] : ((((X428 @ X429)) = $true) | ($true != ((var @ X429)))) & ! [X430 : term] : (($true = ((X428 @ (lam @ X430)))) | ? [X431 : term] : ((((X428 @ (sub @ X430 @ (push @ X431 @ id)))) != $true) & ($true = ((X428 @ X431))))) & ($true != ((X428 @ X427))))) | ? [X424 : (subst > term > subst > $o)] : ! [X425 : (term > $o)] : ? [X426 : term] : (((X424 @ id @ X426 @ id)) != ((X425 @ X426)))) <=> (hoasinduction_lthm_3 = $true)) & (hoasinduction_lem1v2 = $true) & (apnotvar = $true) & (lamnotvar = $true) & (pushprop_lthm = $true) & (! [X259 : term] : (((sub @ X259 @ id)) = X259) <=> (axvarid = $true)) & (termmset_gthm = $true) & (hoasapinj1_gthm = $true) & ((axscons = $true) <=> ! [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) = X170)) & (axmap = $true) & (pushprop_lem2v2 = $true) & (hoasinduction_lem1_lthm = $true) & (! [X157 : term,X156 : term] : ((X156 = X157) | (((sub @ X157 @ sh)) != ((sub @ X156 @ sh)))) <=> (shinj = $true)) & (! [X93 : (term > $o),X94 : term] : ((((X93 @ X94)) = $true) | ? [X95 : term,X96 : term] : (($true = ((X93 @ X95))) & ($true = ((X93 @ X96))) & ($true != ((X93 @ (ap @ X95 @ X96))))) | ? [X98 : term] : (($true = ((X93 @ X98))) & ($true != ((X93 @ (lam @ X98))))) | ? [X97 : term] : (($true != ((X93 @ X97))) & (((var @ X97)) = $true))) <=> (induction = $true)) & (! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) <=> (hoasapinj1 = $true)) & (! [X171 : (subst > term > term),X172 : (subst > term > term),X174 : subst,X173 : term] : (? [X178 : subst,X180 : term,X179 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) != ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) | ? [X177 : subst,X176 : term,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) != ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))) | (((lam @ (X171 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((X172 @ X174 @ X173)) = ((X171 @ X174 @ X173)))) <=> (hoaslaminj = $true)) & ((hoasinduction_lthm = $true) <=> (((! [X407 : term,X406 : (subst > term > subst > $o)] : (? [X414 : term,X417 : subst,X415 : subst,X416 : subst] : (($true != ((X406 @ X415 @ X414 @ (comp @ X417 @ X416)))) & ($true = ((X406 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416)))) | ? [X419 : (subst > term > term)] : (($true != ((X406 @ id @ (lam @ (X419 @ sh @ one)) @ id))) & ! [X423 : term] : ((((X406 @ id @ (X419 @ id @ X423) @ id)) = $true) | (((X406 @ id @ X423 @ id)) != $true)) & ! [X421 : subst,X420 : subst,X422 : term] : (((sub @ (X419 @ X420 @ X422) @ X421)) = ((X419 @ (comp @ X420 @ X421) @ (sub @ X422 @ X421))))) | ? [X418 : term] : (($true != ((X406 @ id @ X418 @ id))) & ($true = ((var @ (sub @ X418 @ id))))) | ? [X413 : term,X412 : term] : ((((X406 @ id @ X412 @ id)) = $true) & (((X406 @ id @ X413 @ id)) = $true) & (((X406 @ id @ (ap @ (sub @ X413 @ id) @ X412) @ id)) != $true)) | ? [X408 : subst,X411 : term,X409 : subst,X410 : subst] : (($true != ((X406 @ (comp @ X408 @ X410) @ (sub @ X411 @ X410) @ X409))) & ($true = ((X406 @ X408 @ X411 @ (comp @ X410 @ X409))))) | ($true = ((X406 @ id @ X407 @ id)))) | ? [X390 : (subst > term > subst > $o),X391 : term] : (! [X402 : subst,X403 : subst,X404 : subst,X401 : term] : (($true != ((X390 @ (comp @ X402 @ X404) @ (sub @ X401 @ X404) @ X403))) | ($true = ((X390 @ X402 @ X401 @ (comp @ X404 @ X403))))) & ! [X393 : term,X394 : subst,X395 : subst,X392 : subst] : (($true != ((X390 @ X394 @ X393 @ (comp @ X392 @ X395)))) | ($true = ((X390 @ (comp @ X394 @ X392) @ (sub @ X393 @ X392) @ X395)))) & ! [X405 : term] : (($true = ((X390 @ id @ (sub @ X391 @ (push @ X405 @ id)) @ id))) | ($true != ((X390 @ id @ X405 @ id)))) & (((X390 @ id @ (lam @ X391) @ id)) != $true) & ! [X396 : (subst > term > term)] : (($true = ((X390 @ id @ (lam @ (X396 @ sh @ one)) @ id))) | ? [X399 : subst,X398 : subst,X397 : term] : (((X396 @ (comp @ X398 @ X399) @ (sub @ X397 @ X399))) != ((sub @ (X396 @ X398 @ X397) @ X399))) | ? [X400 : term] : ((((X390 @ id @ (X396 @ id @ X400) @ id)) != $true) & (((X390 @ id @ X400 @ id)) = $true))))) | ? [X379 : term,X378 : (subst > term > subst > $o),X377 : term] : (! [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true != ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) | ($true = ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) & ($true = ((X378 @ id @ X379 @ id))) & ! [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) != $true) | (((X378 @ id @ X381 @ id)) != $true) | (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) = $true)) & ! [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) != $true) | ($true = ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) & ($true != ((X378 @ id @ (ap @ X377 @ X379) @ id))) & ($true = ((X378 @ id @ X377 @ id))))) | ? [X371 : (term > $o),X370 : term] : (! [X372 : term] : (($true = ((X371 @ (lam @ X372)))) | ? [X373 : term] : ((((X371 @ X373)) = $true) & (((X371 @ (sub @ X372 @ (push @ X373 @ id)))) != $true))) & ! [X374 : term] : ((((var @ X374)) != $true) | ($true = ((X371 @ X374)))) & ! [X375 : term,X376 : term] : (($true = ((X371 @ (ap @ X376 @ X375)))) | (((X371 @ X375)) != $true) | ($true != ((X371 @ X376)))) & (((X371 @ X370)) != $true)))) & (pushprop_lem2v2_gthm = $true) & (hoasapnotvar = $true) & (((! [X507 : term,X508 : (term > $o)] : (? [X509 : term] : (! [X510 : term] : ((((X508 @ (sub @ X509 @ (push @ X510 @ id)))) = $true) | (((X508 @ X510)) != $true)) & (((X508 @ (lam @ X509))) != $true)) | ? [X511 : term] : ((((var @ X511)) = $true) & (((X508 @ X511)) != $true)) | (((X508 @ X507)) = $true) | ? [X512 : term,X513 : term] : (($true = ((X508 @ X512))) & (((X508 @ X513)) = $true) & ($true != ((X508 @ (ap @ X512 @ X513)))))) | ? [X500 : subst,X501 : (term > $o),X499 : term] : (! [X504 : term] : (($true != ((var @ X504))) | ($true = ((X501 @ (sub @ X504 @ X500))))) & ($true != ((X501 @ (sub @ X499 @ X500)))) & ! [X502 : term,X503 : term] : ((((X501 @ (ap @ X503 @ X502))) = $true) | (((X501 @ X502)) != $true) | ($true != ((X501 @ X503)))) & ! [X505 : term] : ((((X501 @ (lam @ X505))) = $true) | ? [X506 : term] : (($true != ((X501 @ (sub @ X505 @ (push @ X506 @ id))))) & (((X501 @ X506)) = $true))))) | ? [X498 : term] : (((sub @ X498 @ id)) != X498)) <=> (induction2_lthm = $true)) & (((d2subst @ d_id)) = sh) & ((hoasinduction_lem3aaa = $true) <=> ! [X130 : term,X129 : (subst > term > subst > $o)] : ((((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true) | ? [X131 : term] : (($true = ((X129 @ id @ X131 @ id))) & (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) != $true)) | ? [X133 : (subst > term > term),X132 : term] : (! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) & ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | (((X129 @ id @ X140 @ id)) != $true)) & (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) != $true) & ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139)))))) & (! [X367 : subst,X365 : (term > $o),X366 : term] : ? [X368 : (term > $o)] : ! [X369 : term] : (((X368 @ X369)) = ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & (pushprop_lthm_orig = $true) & (hoasinduction_lem1_gthm = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : ((((X349 @ (lam @ X347))) = $true) | ? [X350 : subst,X353 : term,X352 : subst,X351 : subst] : (($true = ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) & ($true != ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) | ? [X364 : term] : (((X349 @ X364)) != ((X348 @ id @ X364 @ id))) | ? [X362 : subst,X361 : term,X360 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) = $true) & ($true != ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) | ? [X363 : term] : (($true = ((X349 @ X363))) & ($true != ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) | ? [X354 : (subst > term > term)] : (! [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) = $true) | (((X348 @ id @ X355 @ id)) != $true)) & ($true != ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) & ! [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) = ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358))))))) & ((hoasapinj2_lthm = $true) <=> (? [X66 : term,X65 : term,X67 : term,X64 : term] : ((X64 != X66) & (((ap @ X67 @ X66)) = ((ap @ X65 @ X64)))) | ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))))) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((? [X32 : term] : (((sub @ X32 @ id)) != X32) | ! [X33 : term] : (((sub @ X33 @ id)) = X33)) <=> (termmset_lthm = $true)) & (axassoc = $true) & (pushprop_lem0_gthm = $true) & (! [X232 : (subst > term > subst > $o),X231 : term] : (? [X246 : term] : ((((X232 @ id @ X246 @ id)) = $true) & (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) != $true)) | ? [X235 : subst,X234 : subst,X233 : term,X236 : subst] : (($true = ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235))) & (((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) != $true)) | ? [X237 : (subst > term > term)] : (! [X238 : term] : ((((X232 @ id @ X238 @ id)) != $true) | (((X232 @ id @ (X237 @ id @ X238) @ id)) = $true)) & ! [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) = ((sub @ (X237 @ X239 @ X241) @ X240))) & (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) != $true)) | ($true = ((X232 @ id @ (lam @ X231) @ id))) | ? [X244 : subst,X242 : subst,X243 : subst,X245 : term] : (($true != ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) & ($true = ((X232 @ X244 @ X245 @ (comp @ X243 @ X242)))))) <=> (hoasinduction_lem3 = $true)) & (! [X181 : subst] : (((comp @ X181 @ id)) = X181) <=> (axidr = $true)) & (ulamvarind = $true) & (((var @ (d2term @ d_one))) != $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (((! [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (($true = ((X267 @ (lam @ X269)))) | ? [X271 : term] : (($true = ((X267 @ X271))) & ($true != ((X267 @ (sub @ X269 @ (push @ X271 @ id)))))) | ? [X270 : term] : (((X268 @ id @ X270 @ id)) != ((X267 @ X270))) | ? [X272 : (subst > term > term)] : (! [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) = ((sub @ (X272 @ X273 @ X275) @ X274))) & ($true != ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))) & ! [X276 : term] : ((((X268 @ id @ X276 @ id)) != $true) | ($true = ((X268 @ id @ (X272 @ id @ X276) @ id)))))) | ? [X266 : term] : (((sub @ X266 @ id)) != X266)) | ? [X262 : term] : ! [X263 : (subst > term > term)] : ? [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) != ((X263 @ X264 @ X265)))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasapinj2_gthm = $true) & (axclos = $true) & ! [X169 : d_term] : (d_one = X169) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoaslamnotap_lthm = $true) & (pushprop = $true) & (pushprop_lem3v2_lthm = $true) & (((d2term @ d_one)) = one) & ! [X141 : d_term,X142 : d_term] : ((X141 = X142) | (((d2term @ X141)) != ((d2term @ X142)))) & (hoaslamnotap_gthm = $true) & (hoasinduction_lem3a_gthm = $true) & ((laminj = $true) <=> ! [X219 : term,X218 : term] : ((X218 = X219) | (((lam @ X219)) != ((lam @ X218))))) & (pushprop_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (! [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true != ((X215 @ X214))) | (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) = $true)) <=> (pushprop_lem1 = $true)) & (induction2lem_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ! [X331 : term,X330 : term,X332 : (subst > term > subst > $o)] : (? [X342 : term,X341 : term] : ((((X332 @ id @ X341 @ id)) = $true) & (((X332 @ id @ X342 @ id)) = $true) & (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) != $true)) | ($true = ((X332 @ id @ (ap @ X331 @ X330) @ id))) | ? [X339 : term,X337 : subst,X338 : subst,X340 : subst] : (($true != ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) & (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) = $true)) | ? [X333 : subst,X334 : term,X335 : subst,X336 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) = $true) & ($true != ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) | ($true != ((X332 @ id @ X331 @ id))) | (((X332 @ id @ X330 @ id)) != $true))) & (! [X532 : term,X531 : (subst > term > subst > $o)] : (? [X533 : (subst > term > term)] : (! [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) = $true) | ($true != ((X531 @ id @ X534 @ id)))) & ($true != ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) & ! [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) = ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) | ($true = ((X531 @ id @ X532 @ id))) | ? [X538 : term,X539 : term] : (($true = ((X531 @ id @ X539 @ id))) & ($true = ((X531 @ id @ X538 @ id))) & ($true != ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id))))) <=> (hoasinduction_no_psi_cond = $true)) & (hoasinduction_lem3b_gthm = $true) & (substmonoid_gthm = $true) & (hoasinduction_lem1 = $true) & (hoasinduction_lem2_lthm = $true) & (! [X1 : term,X0 : (subst > term > subst > $o)] : (($true = ((X0 @ id @ (lam @ X1) @ id))) | ? [X7 : term] : ((((X0 @ id @ X7 @ id)) = $true) & ($true != ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) | ? [X2 : (subst > term > term)] : (! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) & (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X6 : term] : (($true = ((X0 @ id @ (X2 @ id @ X6) @ id))) | (((X0 @ id @ X6 @ id)) != $true)))) <=> (hoasinduction_lem3a = $true)) & (! [X80 : (subst > term > subst > $o)] : ? [X81 : (term > $o)] : ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82))) <=> (hoasinduction_lem0_lthm = $true)) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) != ((d2subst @ X91))) | (X91 = X92)) & (induction2_gthm = $true) & (! [X515 : (subst > term > term),X514 : term,X516 : term] : (? [X517 : term,X519 : subst,X518 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) != ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))) | (((ap @ (sub @ X516 @ id) @ X514)) != ((lam @ (X515 @ sh @ one))))) <=> (hoaslamnotap = $true)) & (hoaslaminj_gthm = $true) & ((substmonoid = $true) <=> (! [X520 : subst] : (((comp @ X520 @ id)) = X520) & ! [X521 : subst] : (((comp @ id @ X521)) = X521))) & (! [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) = X260) <=> (axvarcons = $true)) & (hoasapnotvar_gthm = $true) & (hoaslamnotvar = $true) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (? [X488 : term] : (($true = ((X482 @ X488))) & (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) != $true)) | ? [X489 : term] : (((X481 @ id @ X489 @ id)) != ((X482 @ X489))) | ? [X483 : (subst > term > term)] : ((((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) != $true) & ! [X487 : term] : ((((X481 @ id @ X487 @ id)) != $true) | (((X481 @ id @ (X483 @ id @ X487) @ id)) = $true)) & ! [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) = ((sub @ (X483 @ X485 @ X486) @ X484)))) | ? [X491 : subst,X490 : subst,X493 : term,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) != $true) & (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) = $true)) | ($true = ((X482 @ (lam @ X480)))) | ? [X496 : subst,X495 : subst,X497 : subst,X494 : term] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) = $true) & ($true != ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))) | ? [X479 : term] : (((sub @ X479 @ id)) != X479))) & (id = ((d2subst @ d_id))) & (! [X307 : term,X310 : (term > $o),X309 : (subst > term > subst > $o),X308 : term] : (? [X311 : term] : (((X309 @ id @ X311 @ id)) != ((X310 @ X311))) | ? [X313 : term,X312 : term] : (($true = ((X309 @ id @ X313 @ id))) & (((X309 @ id @ X312 @ id)) = $true) & (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) != $true)) | ? [X319 : subst,X320 : subst,X321 : term,X318 : subst] : (($true = ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) & ($true != ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) | (((X310 @ X308)) != $true) | ($true = ((X310 @ (ap @ X307 @ X308)))) | ? [X314 : subst,X317 : subst,X316 : term,X315 : subst] : (($true != ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314))) & ($true = ((X309 @ X315 @ X316 @ (comp @ X317 @ X314))))) | (((X310 @ X307)) != $true)) <=> (hoasinduction_lem2v2 = $true)) & (pushprop_lem2v2_lthm = $true) & (! [X165 : term] : ? [X166 : (subst > term > term)] : (((X166 @ sh @ one)) = ((sub @ X165 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((induction2lem = $true) <=> ! [X72 : subst,X73 : (term > $o),X74 : term] : (? [X76 : term] : (! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ($true != ((X73 @ X77)))) & ($true != ((X73 @ (lam @ X76))))) | ($true = ((X73 @ (sub @ X74 @ X72)))) | ? [X78 : term,X79 : term] : ((((X73 @ X78)) = $true) & ($true = ((X73 @ X79))) & (((X73 @ (ap @ X78 @ X79))) != $true)) | ? [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) != $true) & (((var @ X75)) = $true)))) & (((! [X110 : term,X111 : (subst > term > subst > $o)] : (? [X112 : term] : (($true != ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) & ($true = ((X111 @ id @ X112 @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ? [X113 : (subst > term > term)] : (($true != ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) & ! [X114 : term] : (($true = ((X111 @ id @ (X113 @ id @ X114) @ id))) | (((X111 @ id @ X114 @ id)) != $true)) & ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))))) | ? [X102 : (subst > term > subst > $o),X103 : term] : (! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ? [X106 : term] : ((((X102 @ id @ X106 @ id)) = $true) & (((X102 @ id @ (X105 @ id @ X106) @ id)) != $true)) | ? [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) != ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) & ($true != ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) & ! [X104 : term] : ((((X102 @ id @ X104 @ id)) != $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id)))))) | ? [X101 : term] : (((sub @ X101 @ id)) != X101)) <=> (hoasinduction_lem3a_lthm = $true)) & (! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) <=> (apinj2 = $true)) & (axvarshift = $true) & (hoasinduction_lem2v2_gthm = $true) & ((hoasinduction = $true) <=> ! [X195 : (subst > term > subst > $o),X194 : term] : (? [X197 : (subst > term > term)] : (($true != ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) & ! [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) = ((sub @ (X197 @ X200 @ X201) @ X199))) & ! [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) = $true) | (((X195 @ id @ X198 @ id)) != $true))) | ? [X207 : term,X206 : term] : (($true != ((X195 @ id @ (ap @ (sub @ X206 @ id) @ X207) @ id))) & ($true = ((X195 @ id @ X206 @ id))) & ($true = ((X195 @ id @ X207 @ id)))) | ? [X205 : term,X203 : subst,X204 : subst,X202 : subst] : ((((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) != $true) & (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) = $true)) | ? [X209 : term,X210 : subst,X208 : subst,X211 : subst] : (($true != ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) & ($true = ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) | ? [X196 : term] : (($true != ((X195 @ id @ X196 @ id))) & ($true = ((var @ (sub @ X196 @ id))))) | (((X195 @ id @ X194 @ id)) = $true))) & (axapp = $true) & (! [X247 : term] : ? [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) = ((X248 @ sh @ one))) <=> (hoasinduction_lem3b_lthm = $true)) & ((pushprop_lem1_lthm = $true) <=> ((! [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true) | (((X153 @ X152)) != $true)) | ? [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) != X150)) | ? [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) != X147))) & ! [X118 : d_subst] : (d_id = X118) & (hoaslamnotvar_lthm = $true) & (! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) <=> (axshiftcons = $true)) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (! [X343 : term] : ? [X344 : (subst > term > term)] : ! [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) = ((X344 @ X346 @ X345))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ((((! [X471 : subst,X470 : (subst > term > term),X469 : term,X472 : (subst > term > term)] : (? [X473 : subst,X475 : term,X474 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) != ((sub @ (X472 @ X473 @ X475) @ X474))) | (((X470 @ X471 @ X469)) = ((X472 @ X471 @ X469))) | (((lam @ (X470 @ sh @ one))) != ((lam @ (X472 @ sh @ one)))) | ? [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) != ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476))))) | ? [X467 : term,X468 : term] : ((X467 != X468) & (((lam @ X467)) = ((lam @ X468))))) | ? [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) != X465)) | ? [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) != X463)) <=> (hoaslaminj_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X187 : term,X186 : (subst > term > subst > $o)] : (? [X188 : (subst > term > term)] : (! [X192 : term] : (($true = ((X186 @ id @ (X188 @ id @ X192) @ id))) | ($true != ((X186 @ id @ X192 @ id)))) & ! [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X188 @ X191 @ X189) @ X190))) & ($true != ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id)))) | (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) = $true) | ? [X193 : term] : (($true = ((X186 @ id @ X193 @ id))) & (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) != $true)))) & ((hoasinduction_lem3v2_f = $true) <=> ! [X182 : term] : ? [X183 : (subst > term > term)] : ! [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) = ((X183 @ X184 @ X185)))) & (! [X159 : (term > $o),X158 : term] : (($true = ((X159 @ X158))) | ? [X163 : term] : (! [X164 : term] : (($true = ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) | ($true != ((X159 @ X164)))) & (((X159 @ (lam @ X163))) != $true)) | ? [X160 : term,X161 : term] : (($true != ((X159 @ (ap @ X160 @ X161)))) & (((X159 @ X161)) = $true) & (((X159 @ X160)) = $true)) | ? [X162 : term] : (($true != ((X159 @ X162))) & (((var @ X162)) = $true))) <=> (induction2 = $true)) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one))))),
  inference(ennf_transformation,[],[f9])).
thf(f11,plain,(
  ((hoasinduction_lem3v2_lthm = $true) <=> (! [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (? [X488 : term] : (($true = ((X482 @ X488))) & (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) != $true)) | ? [X489 : term] : (((X481 @ id @ X489 @ id)) != ((X482 @ X489))) | ? [X483 : (subst > term > term)] : ((((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) != $true) & ! [X487 : term] : ((((X481 @ id @ X487 @ id)) != $true) | (((X481 @ id @ (X483 @ id @ X487) @ id)) = $true)) & ! [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) = ((sub @ (X483 @ X485 @ X486) @ X484)))) | ? [X491 : subst,X490 : subst,X493 : term,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) != $true) & (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) = $true)) | ($true = ((X482 @ (lam @ X480)))) | ? [X496 : subst,X495 : subst,X497 : subst,X494 : term] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) = $true) & ($true != ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))) | ? [X479 : term] : (((sub @ X479 @ id)) != X479))) & (! [X515 : (subst > term > term),X514 : term,X516 : term] : (? [X517 : term,X519 : subst,X518 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) != ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))) | (((ap @ (sub @ X516 @ id) @ X514)) != ((lam @ (X515 @ sh @ one))))) <=> (hoaslamnotap = $true)) & ((hoasinduction_lem3v2 = $true) <=> ! [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : ((((X349 @ (lam @ X347))) = $true) | ? [X350 : subst,X353 : term,X352 : subst,X351 : subst] : (($true = ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) & ($true != ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) | ? [X364 : term] : (((X349 @ X364)) != ((X348 @ id @ X364 @ id))) | ? [X362 : subst,X361 : term,X360 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) = $true) & ($true != ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) | ? [X363 : term] : (($true = ((X349 @ X363))) & ($true != ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) | ? [X354 : (subst > term > term)] : (! [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) = $true) | (((X348 @ id @ X355 @ id)) != $true)) & ($true != ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) & ! [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) = ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358))))))) & (! [X532 : term,X531 : (subst > term > subst > $o)] : (? [X533 : (subst > term > term)] : (! [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) = $true) | ($true != ((X531 @ id @ X534 @ id)))) & ($true != ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) & ! [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) = ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) | ($true = ((X531 @ id @ X532 @ id))) | ? [X538 : term,X539 : term] : (($true = ((X531 @ id @ X539 @ id))) & ($true = ((X531 @ id @ X538 @ id))) & ($true != ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id))))) <=> (hoasinduction_no_psi_cond = $true)) & (hoasapinj1_gthm = $true) & (hoaslamnotap_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) != ((d2subst @ X91))) | (X91 = X92)) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (($true = ((X267 @ (lam @ X269)))) | ? [X271 : term] : (($true = ((X267 @ X271))) & ($true != ((X267 @ (sub @ X269 @ (push @ X271 @ id)))))) | ? [X270 : term] : (((X268 @ id @ X270 @ id)) != ((X267 @ X270))) | ? [X272 : (subst > term > term)] : (! [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) = ((sub @ (X272 @ X273 @ X275) @ X274))) & ($true != ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))) & ! [X276 : term] : ((((X268 @ id @ X276 @ id)) != $true) | ($true = ((X268 @ id @ (X272 @ id @ X276) @ id)))))) | ? [X266 : term] : (((sub @ X266 @ id)) != X266) | ? [X262 : term] : ! [X263 : (subst > term > term)] : ? [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) != ((X263 @ X264 @ X265))))) & (hoaslamnotvar_lthm = $true) & ((pushprop_lem0 = $true) <=> ! [X36 : term,X35 : (term > $o),X34 : subst] : ? [X37 : (term > $o)] : ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & (hoasinduction_lem2_lthm = $true) & (! [X181 : subst] : (((comp @ X181 @ id)) = X181) <=> (axidr = $true)) & (induction2_gthm = $true) & ! [X118 : d_subst] : (d_id = X118) & ((! [X223 : subst,X226 : (term > $o),X225 : (term > $o),X224 : term] : (? [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) != ((X226 @ X227))) | ($true != ((X225 @ X224))) | ($true = ((X226 @ one)))) | ? [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) != X221)) <=> (pushprop_lem1v2_lthm = $true)) & (pushprop_lthm = $true) & ! [X167 : subst] : ? [X168 : d_subst] : (((d2subst @ X168)) = X167) & ((? [X467 : term,X468 : term] : ((X467 != X468) & (((lam @ X467)) = ((lam @ X468)))) | ? [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) != X465) | ? [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) != X463) | ! [X471 : subst,X470 : (subst > term > term),X469 : term,X472 : (subst > term > term)] : (? [X473 : subst,X475 : term,X474 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) != ((sub @ (X472 @ X473 @ X475) @ X474))) | (((X470 @ X471 @ X469)) = ((X472 @ X471 @ X469))) | (((lam @ (X470 @ sh @ one))) != ((lam @ (X472 @ sh @ one)))) | ? [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) != ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476)))))) <=> (hoaslaminj_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & (! [X80 : (subst > term > subst > $o)] : ? [X81 : (term > $o)] : ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82))) <=> (hoasinduction_lem0_lthm = $true)) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & (((d2subst @ d_id)) = sh) & (pushprop_lem3v2_lthm = $true) & ((pushprop_lem1_lthm = $true) <=> (? [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) != X147) | ? [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) != X150) | ! [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true) | (((X153 @ X152)) != $true)))) & (pushprop_lem1v2_gthm = $true) & (! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) <=> (axshiftcons = $true)) & ((apinj1 = $true) <=> ! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125))))) & ((laminj = $true) <=> ! [X219 : term,X218 : term] : ((X218 = X219) | (((lam @ X219)) != ((lam @ X218))))) & (hoasinduction_lem2v2_gthm = $true) & (! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) <=> (apinj2 = $true)) & (lamnotap != $true) & ((induction2_lthm = $true) <=> (? [X500 : subst,X501 : (term > $o),X499 : term] : (! [X504 : term] : (($true != ((var @ X504))) | ($true = ((X501 @ (sub @ X504 @ X500))))) & ($true != ((X501 @ (sub @ X499 @ X500)))) & ! [X502 : term,X503 : term] : ((((X501 @ (ap @ X503 @ X502))) = $true) | (((X501 @ X502)) != $true) | ($true != ((X501 @ X503)))) & ! [X505 : term] : ((((X501 @ (lam @ X505))) = $true) | ? [X506 : term] : (($true != ((X501 @ (sub @ X505 @ (push @ X506 @ id))))) & (((X501 @ X506)) = $true)))) | ? [X498 : term] : (((sub @ X498 @ id)) != X498) | ! [X507 : term,X508 : (term > $o)] : (? [X509 : term] : (! [X510 : term] : ((((X508 @ (sub @ X509 @ (push @ X510 @ id)))) = $true) | (((X508 @ X510)) != $true)) & (((X508 @ (lam @ X509))) != $true)) | ? [X511 : term] : ((((var @ X511)) = $true) & (((X508 @ X511)) != $true)) | (((X508 @ X507)) = $true) | ? [X512 : term,X513 : term] : (($true = ((X508 @ X512))) & (((X508 @ X513)) = $true) & ($true != ((X508 @ (ap @ X512 @ X513)))))))) & (! [X307 : term,X310 : (term > $o),X309 : (subst > term > subst > $o),X308 : term] : (? [X311 : term] : (((X309 @ id @ X311 @ id)) != ((X310 @ X311))) | ? [X313 : term,X312 : term] : (($true = ((X309 @ id @ X313 @ id))) & (((X309 @ id @ X312 @ id)) = $true) & (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) != $true)) | ? [X319 : subst,X320 : subst,X321 : term,X318 : subst] : (($true = ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) & ($true != ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) | (((X310 @ X308)) != $true) | ($true = ((X310 @ (ap @ X307 @ X308)))) | ? [X314 : subst,X317 : subst,X316 : term,X315 : subst] : (($true != ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314))) & ($true = ((X309 @ X315 @ X316 @ (comp @ X317 @ X314))))) | (((X310 @ X307)) != $true)) <=> (hoasinduction_lem2v2 = $true)) & (((! [X329 : subst] : (((comp @ X329 @ id)) = X329) & ! [X328 : subst] : (((comp @ id @ X328)) = X328)) | ? [X327 : subst] : (((comp @ X327 @ id)) != X327) | ? [X326 : subst] : (((comp @ id @ X326)) != X326)) <=> (substmonoid_lthm = $true)) & (pushprop_lem3v2 = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X187 : term,X186 : (subst > term > subst > $o)] : (? [X188 : (subst > term > term)] : (! [X192 : term] : (($true = ((X186 @ id @ (X188 @ id @ X192) @ id))) | ($true != ((X186 @ id @ X192 @ id)))) & ! [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X188 @ X191 @ X189) @ X190))) & ($true != ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id)))) | (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) = $true) | ? [X193 : term] : (($true = ((X186 @ id @ X193 @ id))) & (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) != $true)))) & (pushprop_lem0_gthm = $true) & (! [X27 : subst,X28 : (term > $o),X30 : term,X29 : (term > $o)] : (($true != ((X29 @ X30))) | (((X28 @ one)) = $true) | ? [X31 : term] : (((X28 @ X31)) != ((X29 @ (sub @ X31 @ (push @ X30 @ X27)))))) <=> (pushprop_lem1v2 = $true)) & (hoasinduction_lem3b_gthm = $true) & (axapp = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (((var @ (d2term @ d_one))) != $true) & ! [X141 : d_term,X142 : d_term] : ((X141 = X142) | (((d2term @ X141)) != ((d2term @ X142)))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (induction2lem_gthm = $true) & ((induction2lem_lthm = $true) <=> (? [X14 : (term > $o),X13 : term] : (($true != ((X14 @ X13))) & ! [X16 : term] : ((((X14 @ (lam @ X16))) = $true) | (((X14 @ X16)) != $true)) & ! [X18 : term,X17 : term] : ((((X14 @ X17)) != $true) | (((X14 @ X18)) != $true) | ($true = ((X14 @ (ap @ X18 @ X17))))) & ! [X15 : term] : ((((var @ X15)) != $true) | ($true = ((X14 @ X15))))) | ? [X12 : subst] : (((comp @ X12 @ id)) != X12) | ? [X8 : term,X9 : subst] : (((sub @ one @ (push @ X8 @ X9))) != X8) | ! [X21 : (term > $o),X20 : term,X19 : subst] : (? [X25 : term] : (! [X26 : term] : ((((X21 @ (sub @ X25 @ (push @ X26 @ id)))) = $true) | ($true != ((X21 @ X26)))) & ($true != ((X21 @ (lam @ X25))))) | ? [X22 : term,X23 : term] : ((((X21 @ (ap @ X23 @ X22))) != $true) & ($true = ((X21 @ X22))) & ($true = ((X21 @ X23)))) | (((X21 @ (sub @ X20 @ X19))) = $true) | ? [X24 : term] : (($true = ((var @ X24))) & ($true != ((X21 @ (sub @ X24 @ X19)))))) | ? [X10 : term,X11 : subst] : (((comp @ sh @ (push @ X10 @ X11))) != X11))) & (pushprop_lem2v2 = $true) & (! [X1 : term,X0 : (subst > term > subst > $o)] : (($true = ((X0 @ id @ (lam @ X1) @ id))) | ? [X7 : term] : ((((X0 @ id @ X7 @ id)) = $true) & ($true != ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) | ? [X2 : (subst > term > term)] : (! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) & (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X6 : term] : (($true = ((X0 @ id @ (X2 @ id @ X6) @ id))) | (((X0 @ id @ X6 @ id)) != $true)))) <=> (hoasinduction_lem3a = $true)) & (hoaslaminj_gthm = $true) & ((? [X524 : term,X525 : term,X526 : term,X523 : term] : ((X525 != X526) & (((ap @ X525 @ X523)) = ((ap @ X526 @ X524)))) | ? [X522 : term] : (((sub @ X522 @ id)) != X522) | ! [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) != ((ap @ (sub @ X527 @ id) @ X528))) | (X527 = X529))) <=> (hoasapinj1_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar_lthm = $true) & (((d2term @ d_one)) = one) & ((hoasinduction_lem3v2a = $true) <=> ! [X250 : (subst > term > subst > $o),X251 : (term > $o),X249 : term] : (? [X253 : term] : ((((X251 @ X253)) = $true) & ($true != ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) | ($true = ((X251 @ (lam @ X249)))) | ? [X254 : (subst > term > term)] : (($true != ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) & ! [X258 : term] : (($true = ((X250 @ id @ (X254 @ id @ X258) @ id))) | ($true != ((X250 @ id @ X258 @ id)))) & ! [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) = ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255))))) | ? [X252 : term] : (((X250 @ id @ X252 @ id)) != ((X251 @ X252))))) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((! [X299 : (subst > term > subst > $o),X298 : term] : (? [X305 : term,X306 : term] : (($true = ((X299 @ id @ X305 @ id))) & ($true != ((X299 @ id @ (ap @ (sub @ X306 @ id) @ X305) @ id))) & (((X299 @ id @ X306 @ id)) = $true)) | ($true = ((X299 @ id @ X298 @ id))) | ? [X300 : (subst > term > term)] : (! [X304 : term] : (($true = ((X299 @ id @ (X300 @ id @ X304) @ id))) | ($true != ((X299 @ id @ X304 @ id)))) & (((X299 @ id @ (lam @ (X300 @ sh @ one)) @ id)) != $true) & ! [X303 : term,X302 : subst,X301 : subst] : (((X300 @ (comp @ X301 @ X302) @ (sub @ X303 @ X302))) = ((sub @ (X300 @ X301 @ X303) @ X302))))) | ? [X281 : term,X280 : (term > $o)] : (! [X285 : term,X284 : term] : (($true != ((X280 @ X284))) | ($true = ((X280 @ (ap @ X285 @ X284)))) | ($true != ((X280 @ X285)))) & ! [X286 : term] : (($true = ((X280 @ X286))) | ($true != ((var @ X286)))) & ($true != ((X280 @ X281))) & ! [X282 : term] : (($true = ((X280 @ (lam @ X282)))) | ? [X283 : term] : (($true != ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) & ($true = ((X280 @ X283)))))) | ? [X290 : term,X289 : (term > $o),X288 : (subst > term > subst > $o)] : (! [X293 : (subst > term > term)] : (? [X296 : subst,X295 : subst,X297 : term] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) != ((sub @ (X293 @ X295 @ X297) @ X296))) | ? [X294 : term] : ((((X288 @ id @ X294 @ id)) = $true) & (((X288 @ id @ (X293 @ id @ X294) @ id)) != $true)) | ($true = ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id)))) & ! [X291 : term] : (((X289 @ X291)) = ((X288 @ id @ X291 @ id))) & ! [X292 : term] : (($true != ((X289 @ X292))) | ($true = ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) & ($true != ((X289 @ (lam @ X290))))) | ? [X277 : (subst > term > subst > $o)] : ! [X278 : (term > $o)] : ? [X279 : term] : (((X277 @ id @ X279 @ id)) != ((X278 @ X279))) | ? [X287 : term] : (((sub @ X287 @ id)) != X287)) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (axvarshift = $true) & (! [X84 : term,X83 : (subst > term > subst > $o)] : (? [X90 : term] : ((((X83 @ id @ X90 @ id)) = $true) & ($true != ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) | ? [X85 : (subst > term > term)] : (! [X86 : term] : ((((X83 @ id @ X86 @ id)) != $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) & ($true != ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) & ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id)))) <=> (hoasinduction_lem3aa = $true)) & ((induction2lem = $true) <=> ! [X72 : subst,X73 : (term > $o),X74 : term] : (? [X76 : term] : (! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ($true != ((X73 @ X77)))) & ($true != ((X73 @ (lam @ X76))))) | ($true = ((X73 @ (sub @ X74 @ X72)))) | ? [X78 : term,X79 : term] : ((((X73 @ X78)) = $true) & ($true = ((X73 @ X79))) & (((X73 @ (ap @ X78 @ X79))) != $true)) | ? [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) != $true) & (((var @ X75)) = $true)))) & ((hoasinduction = $true) <=> ! [X195 : (subst > term > subst > $o),X194 : term] : (? [X197 : (subst > term > term)] : (($true != ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) & ! [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) = ((sub @ (X197 @ X200 @ X201) @ X199))) & ! [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) = $true) | (((X195 @ id @ X198 @ id)) != $true))) | ? [X207 : term,X206 : term] : (($true != ((X195 @ id @ (ap @ (sub @ X206 @ id) @ X207) @ id))) & ($true = ((X195 @ id @ X206 @ id))) & ($true = ((X195 @ id @ X207 @ id)))) | ? [X205 : term,X203 : subst,X204 : subst,X202 : subst] : ((((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) != $true) & (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) = $true)) | ? [X209 : term,X210 : subst,X208 : subst,X211 : subst] : (($true != ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) & ($true = ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) | ? [X196 : term] : (($true != ((X195 @ id @ X196 @ id))) & ($true = ((var @ (sub @ X196 @ id))))) | (((X195 @ id @ X194 @ id)) = $true))) & (pushprop = $true) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (! [X232 : (subst > term > subst > $o),X231 : term] : (? [X246 : term] : ((((X232 @ id @ X246 @ id)) = $true) & (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) != $true)) | ? [X235 : subst,X234 : subst,X233 : term,X236 : subst] : (($true = ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235))) & (((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) != $true)) | ? [X237 : (subst > term > term)] : (! [X238 : term] : ((((X232 @ id @ X238 @ id)) != $true) | (((X232 @ id @ (X237 @ id @ X238) @ id)) = $true)) & ! [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) = ((sub @ (X237 @ X239 @ X241) @ X240))) & (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) != $true)) | ($true = ((X232 @ id @ (lam @ X231) @ id))) | ? [X244 : subst,X242 : subst,X243 : subst,X245 : term] : (($true != ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) & ($true = ((X232 @ X244 @ X245 @ (comp @ X243 @ X242)))))) <=> (hoasinduction_lem3 = $true)) & (hoaslamnotvar_gthm = $true) & (! [X259 : term] : (((sub @ X259 @ id)) = X259) <=> (axvarid = $true)) & (! [X220 : subst] : (((comp @ id @ X220)) = X220) <=> (axidl = $true)) & (pushprop_gthm = $true) & ((hoasinduction_lem0 = $true) <=> ! [X228 : (subst > term > subst > $o)] : ? [X229 : (term > $o)] : ! [X230 : term] : (((X229 @ X230)) = ((X228 @ id @ X230 @ id)))) & (! [X247 : term] : ? [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) = ((X248 @ sh @ one))) <=> (hoasinduction_lem3b_lthm = $true)) & (! [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true != ((X215 @ X214))) | (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) = $true)) <=> (pushprop_lem1 = $true)) & (! [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 = X325) | (((ap @ (sub @ X324 @ id) @ X325)) != ((ap @ (sub @ X322 @ id) @ X323)))) <=> (hoasapinj2 = $true)) & (! [X93 : (term > $o),X94 : term] : ((((X93 @ X94)) = $true) | ? [X95 : term,X96 : term] : (($true = ((X93 @ X95))) & ($true = ((X93 @ X96))) & ($true != ((X93 @ (ap @ X95 @ X96))))) | ? [X98 : term] : (($true = ((X93 @ X98))) & ($true != ((X93 @ (lam @ X98))))) | ? [X97 : term] : (($true != ((X93 @ X97))) & (((var @ X97)) = $true))) <=> (induction = $true)) & (termmset_gthm = $true) & ((substmonoid = $true) <=> (! [X520 : subst] : (((comp @ X520 @ id)) = X520) & ! [X521 : subst] : (((comp @ id @ X521)) = X521))) & (hoasinduction_lem1v2 = $true) & (axmap = $true) & (! [X171 : (subst > term > term),X172 : (subst > term > term),X174 : subst,X173 : term] : (? [X178 : subst,X180 : term,X179 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) != ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) | ? [X177 : subst,X176 : term,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) != ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))) | (((lam @ (X171 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((X172 @ X174 @ X173)) = ((X171 @ X174 @ X173)))) <=> (hoaslaminj = $true)) & ((? [X32 : term] : (((sub @ X32 @ id)) != X32) | ! [X33 : term] : (((sub @ X33 @ id)) = X33)) <=> (termmset_lthm = $true)) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem3v2_f = $true) <=> ! [X182 : term] : ? [X183 : (subst > term > term)] : ! [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) = ((X183 @ X184 @ X185)))) & (apnotvar = $true) & ((axscons = $true) <=> ! [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) = X170)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axabs = $true) & ((hoasinduction_lem2 = $true) <=> ! [X331 : term,X330 : term,X332 : (subst > term > subst > $o)] : (? [X342 : term,X341 : term] : ((((X332 @ id @ X341 @ id)) = $true) & (((X332 @ id @ X342 @ id)) = $true) & (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) != $true)) | ($true = ((X332 @ id @ (ap @ X331 @ X330) @ id))) | ? [X339 : term,X337 : subst,X338 : subst,X340 : subst] : (($true != ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) & (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) = $true)) | ? [X333 : subst,X334 : term,X335 : subst,X336 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) = $true) & ($true != ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) | ($true != ((X332 @ id @ X331 @ id))) | (((X332 @ id @ X330 @ id)) != $true))) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X130 : term,X129 : (subst > term > subst > $o)] : ((((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true) | ? [X131 : term] : (($true = ((X129 @ id @ X131 @ id))) & (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) != $true)) | ? [X133 : (subst > term > term),X132 : term] : (! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) & ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | (((X129 @ id @ X140 @ id)) != $true)) & (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) != $true) & ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139)))))) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (axclos = $true) & (! [X157 : term,X156 : term] : ((X156 = X157) | (((sub @ X157 @ sh)) != ((sub @ X156 @ sh)))) <=> (shinj = $true)) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (hoasinduction_lem1_lthm = $true) & ((? [X39 : term] : (((sub @ X39 @ id)) != X39) | ! [X49 : (subst > term > subst > $o),X48 : term] : (? [X51 : term,X53 : subst,X52 : subst,X54 : subst] : (($true != ((X49 @ X53 @ X51 @ (comp @ X52 @ X54)))) & (((X49 @ (comp @ X53 @ X52) @ (sub @ X51 @ X52) @ X54)) = $true)) | ? [X63 : subst,X61 : subst,X62 : term,X60 : subst] : (($true != ((X49 @ (comp @ X63 @ X61) @ (sub @ X62 @ X61) @ X60))) & ($true = ((X49 @ X63 @ X62 @ (comp @ X61 @ X60))))) | ($true = ((X49 @ id @ (lam @ X48) @ id))) | ? [X55 : (subst > term > term)] : (! [X59 : term] : (($true = ((X49 @ id @ (X55 @ id @ X59) @ id))) | (((X49 @ id @ X59 @ id)) != $true)) & ! [X58 : subst,X56 : term,X57 : subst] : (((X55 @ (comp @ X58 @ X57) @ (sub @ X56 @ X57))) = ((sub @ (X55 @ X58 @ X56) @ X57))) & (((X49 @ id @ (lam @ (X55 @ sh @ one)) @ id)) != $true)) | ? [X50 : term] : (($true != ((X49 @ id @ (sub @ X48 @ (push @ X50 @ id)) @ id))) & (((X49 @ id @ X50 @ id)) = $true))) | ? [X40 : (subst > term > subst > $o),X41 : term] : (! [X43 : (subst > term > term)] : (? [X47 : subst,X46 : subst,X45 : term] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) != ((sub @ (X43 @ X47 @ X45) @ X46))) | ? [X44 : term] : (($true = ((X40 @ id @ X44 @ id))) & ($true != ((X40 @ id @ (X43 @ id @ X44) @ id)))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) & ! [X42 : term] : (($true != ((X40 @ id @ X42 @ id))) | (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true)) & ($true != ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id))))) <=> (hoasinduction_lem3_lthm = $true)) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ! [X169 : d_term] : (d_one = X169) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X110 : term,X111 : (subst > term > subst > $o)] : (? [X112 : term] : (($true != ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) & ($true = ((X111 @ id @ X112 @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ? [X113 : (subst > term > term)] : (($true != ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) & ! [X114 : term] : (($true = ((X111 @ id @ (X113 @ id @ X114) @ id))) | (((X111 @ id @ X114 @ id)) != $true)) & ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))))) | ? [X101 : term] : (((sub @ X101 @ id)) != X101) | ? [X102 : (subst > term > subst > $o),X103 : term] : (! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ? [X106 : term] : ((((X102 @ id @ X106 @ id)) = $true) & (((X102 @ id @ (X105 @ id @ X106) @ id)) != $true)) | ? [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) != ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) & ($true != ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) & ! [X104 : term] : ((((X102 @ id @ X104 @ id)) != $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id))))))) & (! [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) = X260) <=> (axvarcons = $true)) & (hoaslamnotvar = $true) & (hoasinduction_lem3_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (? [X66 : term,X65 : term,X67 : term,X64 : term] : ((X64 != X66) & (((ap @ X67 @ X66)) = ((ap @ X65 @ X64)))) | ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))))) & ((hoasinduction_lthm_3 = $true) <=> (? [X435 : (term > $o),X437 : term,X436 : (subst > term > subst > $o)] : (($true != ((X435 @ (lam @ X437)))) & ! [X444 : term] : (($true = ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) | (((X435 @ X444)) != $true)) & ! [X439 : (subst > term > term)] : (? [X440 : term] : ((((X436 @ id @ X440 @ id)) = $true) & ($true != ((X436 @ id @ (X439 @ id @ X440) @ id)))) | (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) = $true) | ? [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) != ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) & ! [X438 : term] : (((X435 @ X438)) = ((X436 @ id @ X438 @ id)))) | ? [X427 : term,X428 : (term > $o)] : (! [X433 : term,X432 : term] : (($true != ((X428 @ X432))) | ($true = ((X428 @ (ap @ X432 @ X433)))) | ($true != ((X428 @ X433)))) & ! [X429 : term] : ((((X428 @ X429)) = $true) | ($true != ((var @ X429)))) & ! [X430 : term] : (($true = ((X428 @ (lam @ X430)))) | ? [X431 : term] : ((((X428 @ (sub @ X430 @ (push @ X431 @ id)))) != $true) & ($true = ((X428 @ X431))))) & ($true != ((X428 @ X427)))) | ! [X446 : term,X445 : (subst > term > subst > $o)] : (? [X462 : subst,X461 : subst,X460 : subst,X459 : term] : ((((X445 @ X461 @ X459 @ (comp @ X460 @ X462))) != $true) & ($true = ((X445 @ (comp @ X461 @ X460) @ (sub @ X459 @ X460) @ X462)))) | ? [X447 : subst,X449 : subst,X450 : subst,X448 : term] : (($true != ((X445 @ (comp @ X447 @ X450) @ (sub @ X448 @ X450) @ X449))) & ($true = ((X445 @ X447 @ X448 @ (comp @ X450 @ X449))))) | ? [X452 : (subst > term > term)] : (! [X456 : term] : (($true = ((X445 @ id @ (X452 @ id @ X456) @ id))) | ($true != ((X445 @ id @ X456 @ id)))) & ($true != ((X445 @ id @ (lam @ (X452 @ sh @ one)) @ id))) & ! [X453 : subst,X455 : term,X454 : subst] : (((sub @ (X452 @ X453 @ X455) @ X454)) = ((X452 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454))))) | ? [X457 : term,X458 : term] : (($true = ((X445 @ id @ X457 @ id))) & ($true != ((X445 @ id @ (ap @ (sub @ X457 @ id) @ X458) @ id))) & (((X445 @ id @ X458 @ id)) = $true)) | ? [X451 : term] : (($true != ((X445 @ id @ X451 @ id))) & (((var @ (sub @ X451 @ id))) = $true)) | ($true = ((X445 @ id @ X446 @ id)))) | ? [X424 : (subst > term > subst > $o)] : ! [X425 : (term > $o)] : ? [X426 : term] : (((X424 @ id @ X426 @ id)) != ((X425 @ X426))) | ? [X434 : term] : (((sub @ X434 @ id)) != X434))) & (substmonoid_gthm = $true) & (! [X343 : term] : ? [X344 : (subst > term > term)] : ! [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) = ((X344 @ X346 @ X345))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (axassoc = $true) & (! [X367 : subst,X365 : (term > $o),X366 : term] : ? [X368 : (term > $o)] : ! [X369 : term] : (((X368 @ X369)) = ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))) <=> (pushprop_lem0_lthm = $true)) & (! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) <=> (hoasapinj1 = $true)) & (hoasapnotvar = $true) & ((hoasinduction_lthm = $true) <=> (? [X379 : term,X378 : (subst > term > subst > $o),X377 : term] : (! [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true != ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) | ($true = ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) & ($true = ((X378 @ id @ X379 @ id))) & ! [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) != $true) | (((X378 @ id @ X381 @ id)) != $true) | (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) = $true)) & ! [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) != $true) | ($true = ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) & ($true != ((X378 @ id @ (ap @ X377 @ X379) @ id))) & ($true = ((X378 @ id @ X377 @ id)))) | ? [X371 : (term > $o),X370 : term] : (! [X372 : term] : (($true = ((X371 @ (lam @ X372)))) | ? [X373 : term] : ((((X371 @ X373)) = $true) & (((X371 @ (sub @ X372 @ (push @ X373 @ id)))) != $true))) & ! [X374 : term] : ((((var @ X374)) != $true) | ($true = ((X371 @ X374)))) & ! [X375 : term,X376 : term] : (($true = ((X371 @ (ap @ X376 @ X375)))) | (((X371 @ X375)) != $true) | ($true != ((X371 @ X376)))) & (((X371 @ X370)) != $true)) | ? [X390 : (subst > term > subst > $o),X391 : term] : (! [X402 : subst,X403 : subst,X404 : subst,X401 : term] : (($true != ((X390 @ (comp @ X402 @ X404) @ (sub @ X401 @ X404) @ X403))) | ($true = ((X390 @ X402 @ X401 @ (comp @ X404 @ X403))))) & ! [X393 : term,X394 : subst,X395 : subst,X392 : subst] : (($true != ((X390 @ X394 @ X393 @ (comp @ X392 @ X395)))) | ($true = ((X390 @ (comp @ X394 @ X392) @ (sub @ X393 @ X392) @ X395)))) & ! [X405 : term] : (($true = ((X390 @ id @ (sub @ X391 @ (push @ X405 @ id)) @ id))) | ($true != ((X390 @ id @ X405 @ id)))) & (((X390 @ id @ (lam @ X391) @ id)) != $true) & ! [X396 : (subst > term > term)] : (($true = ((X390 @ id @ (lam @ (X396 @ sh @ one)) @ id))) | ? [X399 : subst,X398 : subst,X397 : term] : (((X396 @ (comp @ X398 @ X399) @ (sub @ X397 @ X399))) != ((sub @ (X396 @ X398 @ X397) @ X399))) | ? [X400 : term] : ((((X390 @ id @ (X396 @ id @ X400) @ id)) != $true) & (((X390 @ id @ X400 @ id)) = $true)))) | ! [X407 : term,X406 : (subst > term > subst > $o)] : (? [X414 : term,X417 : subst,X415 : subst,X416 : subst] : (($true != ((X406 @ X415 @ X414 @ (comp @ X417 @ X416)))) & ($true = ((X406 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416)))) | ? [X419 : (subst > term > term)] : (($true != ((X406 @ id @ (lam @ (X419 @ sh @ one)) @ id))) & ! [X423 : term] : ((((X406 @ id @ (X419 @ id @ X423) @ id)) = $true) | (((X406 @ id @ X423 @ id)) != $true)) & ! [X421 : subst,X420 : subst,X422 : term] : (((sub @ (X419 @ X420 @ X422) @ X421)) = ((X419 @ (comp @ X420 @ X421) @ (sub @ X422 @ X421))))) | ? [X418 : term] : (($true != ((X406 @ id @ X418 @ id))) & ($true = ((var @ (sub @ X418 @ id))))) | ? [X413 : term,X412 : term] : ((((X406 @ id @ X412 @ id)) = $true) & (((X406 @ id @ X413 @ id)) = $true) & (((X406 @ id @ (ap @ (sub @ X413 @ id) @ X412) @ id)) != $true)) | ? [X408 : subst,X411 : term,X409 : subst,X410 : subst] : (($true != ((X406 @ (comp @ X408 @ X410) @ (sub @ X411 @ X410) @ X409))) & ($true = ((X406 @ X408 @ X411 @ (comp @ X410 @ X409))))) | ($true = ((X406 @ id @ X407 @ id)))))) & (! [X217 : term] : (((sub @ X217 @ id)) = X217) <=> (termmset = $true)) & (ulamvarsh = $true) & (id = ((d2subst @ d_id))) & (! [X165 : term] : ? [X166 : (subst > term > term)] : (((X166 @ sh @ one)) = ((sub @ X165 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & (! [X159 : (term > $o),X158 : term] : (($true = ((X159 @ X158))) | ? [X163 : term] : (! [X164 : term] : (($true = ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) | ($true != ((X159 @ X164)))) & (((X159 @ (lam @ X163))) != $true)) | ? [X160 : term,X161 : term] : (($true != ((X159 @ (ap @ X160 @ X161)))) & (((X159 @ X161)) = $true) & (((X159 @ X160)) = $true)) | ? [X162 : term] : (($true != ((X159 @ X162))) & (((var @ X162)) = $true))) <=> (induction2 = $true)) & (pushprop_lthm_orig = $true) & (lamnotvar = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem1_gthm = $true)),
  inference(flattening,[],[f10])).
thf(f12,plain,(
  (hoasinduction_lem1 = $true) <~> ! [X0 : (subst > term > subst > $o)] : (((! [X10 : term] : ((((var @ X10)) != $true) | ($true = ((X0 @ id @ X10 @ id)))) | ? [X9 : term] : (($true = ((hoasvar @ id @ X9 @ id))) & (((X0 @ id @ X9 @ id)) != $true))) | ? [X7 : subst,X8 : subst,X6 : subst,X5 : term] : ((((X0 @ X8 @ X5 @ (comp @ X7 @ X6))) != $true) & ($true = ((X0 @ (comp @ X8 @ X7) @ (sub @ X5 @ X7) @ X6))))) | ? [X2 : subst,X4 : subst,X1 : subst,X3 : term] : (($true = ((X0 @ X2 @ X3 @ (comp @ X4 @ X1)))) & (((X0 @ (comp @ X2 @ X4) @ (sub @ X3 @ X4) @ X1)) != $true)))),
  inference(ennf_transformation,[],[f7])).
thf(f13,plain,(
  ! [X0 : (subst > term > subst > $o)] : (? [X9 : term] : (($true = ((hoasvar @ id @ X9 @ id))) & (((X0 @ id @ X9 @ id)) != $true)) | ? [X7 : subst,X8 : subst,X6 : subst,X5 : term] : ((((X0 @ X8 @ X5 @ (comp @ X7 @ X6))) != $true) & ($true = ((X0 @ (comp @ X8 @ X7) @ (sub @ X5 @ X7) @ X6)))) | ? [X2 : subst,X4 : subst,X1 : subst,X3 : term] : (($true = ((X0 @ X2 @ X3 @ (comp @ X4 @ X1)))) & (((X0 @ (comp @ X2 @ X4) @ (sub @ X3 @ X4) @ X1)) != $true)) | ! [X10 : term] : ((((var @ X10)) != $true) | ($true = ((X0 @ id @ X10 @ id))))) <~> (hoasinduction_lem1 = $true)),
  inference(flattening,[],[f12])).
thf(f14,definition,(
  ! [X406 : (subst > term > subst > $o)] : (($true = ((sP0 @ X406))) <=> ? [X413 : term,X412 : term] : ((((X406 @ id @ X412 @ id)) = $true) & (((X406 @ id @ X413 @ id)) = $true) & (((X406 @ id @ (ap @ (sub @ X413 @ id) @ X412) @ id)) != $true)))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f15,definition,(
  ($true = sP1) <=> ! [X407 : term,X406 : (subst > term > subst > $o)] : (? [X414 : term,X417 : subst,X415 : subst,X416 : subst] : (($true != ((X406 @ X415 @ X414 @ (comp @ X417 @ X416)))) & ($true = ((X406 @ (comp @ X415 @ X417) @ (sub @ X414 @ X417) @ X416)))) | ? [X419 : (subst > term > term)] : (($true != ((X406 @ id @ (lam @ (X419 @ sh @ one)) @ id))) & ! [X423 : term] : ((((X406 @ id @ (X419 @ id @ X423) @ id)) = $true) | (((X406 @ id @ X423 @ id)) != $true)) & ! [X421 : subst,X420 : subst,X422 : term] : (((sub @ (X419 @ X420 @ X422) @ X421)) = ((X419 @ (comp @ X420 @ X421) @ (sub @ X422 @ X421))))) | ? [X418 : term] : (($true != ((X406 @ id @ X418 @ id))) & ($true = ((var @ (sub @ X418 @ id))))) | ($true = ((sP0 @ X406))) | ? [X408 : subst,X411 : term,X409 : subst,X410 : subst] : (($true != ((X406 @ (comp @ X408 @ X410) @ (sub @ X411 @ X410) @ X409))) & ($true = ((X406 @ X408 @ X411 @ (comp @ X410 @ X409))))) | ($true = ((X406 @ id @ X407 @ id))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f16,definition,(
  (sP2 = $true) <=> ? [X390 : (subst > term > subst > $o),X391 : term] : (! [X402 : subst,X403 : subst,X404 : subst,X401 : term] : (($true != ((X390 @ (comp @ X402 @ X404) @ (sub @ X401 @ X404) @ X403))) | ($true = ((X390 @ X402 @ X401 @ (comp @ X404 @ X403))))) & ! [X393 : term,X394 : subst,X395 : subst,X392 : subst] : (($true != ((X390 @ X394 @ X393 @ (comp @ X392 @ X395)))) | ($true = ((X390 @ (comp @ X394 @ X392) @ (sub @ X393 @ X392) @ X395)))) & ! [X405 : term] : (($true = ((X390 @ id @ (sub @ X391 @ (push @ X405 @ id)) @ id))) | ($true != ((X390 @ id @ X405 @ id)))) & (((X390 @ id @ (lam @ X391) @ id)) != $true) & ! [X396 : (subst > term > term)] : (($true = ((X390 @ id @ (lam @ (X396 @ sh @ one)) @ id))) | ? [X399 : subst,X398 : subst,X397 : term] : (((X396 @ (comp @ X398 @ X399) @ (sub @ X397 @ X399))) != ((sub @ (X396 @ X398 @ X397) @ X399))) | ? [X400 : term] : ((((X390 @ id @ (X396 @ id @ X400) @ id)) != $true) & (((X390 @ id @ X400 @ id)) = $true))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f17,definition,(
  ! [X445 : (subst > term > subst > $o)] : (($true = ((sP3 @ X445))) <=> ? [X457 : term,X458 : term] : (($true = ((X445 @ id @ X457 @ id))) & ($true != ((X445 @ id @ (ap @ (sub @ X457 @ id) @ X458) @ id))) & (((X445 @ id @ X458 @ id)) = $true)))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f18,definition,(
  ($true = sP4) <=> ! [X446 : term,X445 : (subst > term > subst > $o)] : (? [X462 : subst,X461 : subst,X460 : subst,X459 : term] : ((((X445 @ X461 @ X459 @ (comp @ X460 @ X462))) != $true) & ($true = ((X445 @ (comp @ X461 @ X460) @ (sub @ X459 @ X460) @ X462)))) | ? [X447 : subst,X449 : subst,X450 : subst,X448 : term] : (($true != ((X445 @ (comp @ X447 @ X450) @ (sub @ X448 @ X450) @ X449))) & ($true = ((X445 @ X447 @ X448 @ (comp @ X450 @ X449))))) | ? [X452 : (subst > term > term)] : (! [X456 : term] : (($true = ((X445 @ id @ (X452 @ id @ X456) @ id))) | ($true != ((X445 @ id @ X456 @ id)))) & ($true != ((X445 @ id @ (lam @ (X452 @ sh @ one)) @ id))) & ! [X453 : subst,X455 : term,X454 : subst] : (((sub @ (X452 @ X453 @ X455) @ X454)) = ((X452 @ (comp @ X453 @ X454) @ (sub @ X455 @ X454))))) | ($true = ((sP3 @ X445))) | ? [X451 : term] : (($true != ((X445 @ id @ X451 @ id))) & (((var @ (sub @ X451 @ id))) = $true)) | ($true = ((X445 @ id @ X446 @ id))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f19,definition,(
  ($true = sP5) <=> ! [X49 : (subst > term > subst > $o),X48 : term] : (? [X51 : term,X53 : subst,X52 : subst,X54 : subst] : (($true != ((X49 @ X53 @ X51 @ (comp @ X52 @ X54)))) & (((X49 @ (comp @ X53 @ X52) @ (sub @ X51 @ X52) @ X54)) = $true)) | ? [X63 : subst,X61 : subst,X62 : term,X60 : subst] : (($true != ((X49 @ (comp @ X63 @ X61) @ (sub @ X62 @ X61) @ X60))) & ($true = ((X49 @ X63 @ X62 @ (comp @ X61 @ X60))))) | ($true = ((X49 @ id @ (lam @ X48) @ id))) | ? [X55 : (subst > term > term)] : (! [X59 : term] : (($true = ((X49 @ id @ (X55 @ id @ X59) @ id))) | (((X49 @ id @ X59 @ id)) != $true)) & ! [X58 : subst,X56 : term,X57 : subst] : (((X55 @ (comp @ X58 @ X57) @ (sub @ X56 @ X57))) = ((sub @ (X55 @ X58 @ X56) @ X57))) & (((X49 @ id @ (lam @ (X55 @ sh @ one)) @ id)) != $true)) | ? [X50 : term] : (($true != ((X49 @ id @ (sub @ X48 @ (push @ X50 @ id)) @ id))) & (((X49 @ id @ X50 @ id)) = $true)))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f20,definition,(
  ! [X195 : (subst > term > subst > $o)] : ((((sP6 @ X195)) = $true) <=> ? [X207 : term,X206 : term] : (($true != ((X195 @ id @ (ap @ (sub @ X206 @ id) @ X207) @ id))) & ($true = ((X195 @ id @ X206 @ id))) & ($true = ((X195 @ id @ X207 @ id)))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f21,definition,(
  ($true = sP7) <=> ! [X299 : (subst > term > subst > $o),X298 : term] : (? [X305 : term,X306 : term] : (($true = ((X299 @ id @ X305 @ id))) & ($true != ((X299 @ id @ (ap @ (sub @ X306 @ id) @ X305) @ id))) & (((X299 @ id @ X306 @ id)) = $true)) | ($true = ((X299 @ id @ X298 @ id))) | ? [X300 : (subst > term > term)] : (! [X304 : term] : (($true = ((X299 @ id @ (X300 @ id @ X304) @ id))) | ($true != ((X299 @ id @ X304 @ id)))) & (((X299 @ id @ (lam @ (X300 @ sh @ one)) @ id)) != $true) & ! [X303 : term,X302 : subst,X301 : subst] : (((X300 @ (comp @ X301 @ X302) @ (sub @ X303 @ X302))) = ((sub @ (X300 @ X301 @ X303) @ X302)))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f22,definition,(
  (sP8 = $true) <=> (? [X14 : (term > $o),X13 : term] : (($true != ((X14 @ X13))) & ! [X16 : term] : ((((X14 @ (lam @ X16))) = $true) | (((X14 @ X16)) != $true)) & ! [X18 : term,X17 : term] : ((((X14 @ X17)) != $true) | (((X14 @ X18)) != $true) | ($true = ((X14 @ (ap @ X18 @ X17))))) & ! [X15 : term] : ((((var @ X15)) != $true) | ($true = ((X14 @ X15))))) | ? [X12 : subst] : (((comp @ X12 @ id)) != X12) | ? [X8 : term,X9 : subst] : (((sub @ one @ (push @ X8 @ X9))) != X8) | ! [X21 : (term > $o),X20 : term,X19 : subst] : (? [X25 : term] : (! [X26 : term] : ((((X21 @ (sub @ X25 @ (push @ X26 @ id)))) = $true) | ($true != ((X21 @ X26)))) & ($true != ((X21 @ (lam @ X25))))) | ? [X22 : term,X23 : term] : ((((X21 @ (ap @ X23 @ X22))) != $true) & ($true = ((X21 @ X22))) & ($true = ((X21 @ X23)))) | (((X21 @ (sub @ X20 @ X19))) = $true) | ? [X24 : term] : (($true = ((var @ X24))) & ($true != ((X21 @ (sub @ X24 @ X19)))))) | ? [X10 : term,X11 : subst] : (((comp @ sh @ (push @ X10 @ X11))) != X11))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f23,definition,(
  ($true = sP9) <=> (? [X500 : subst,X501 : (term > $o),X499 : term] : (! [X504 : term] : (($true != ((var @ X504))) | ($true = ((X501 @ (sub @ X504 @ X500))))) & ($true != ((X501 @ (sub @ X499 @ X500)))) & ! [X502 : term,X503 : term] : ((((X501 @ (ap @ X503 @ X502))) = $true) | (((X501 @ X502)) != $true) | ($true != ((X501 @ X503)))) & ! [X505 : term] : ((((X501 @ (lam @ X505))) = $true) | ? [X506 : term] : (($true != ((X501 @ (sub @ X505 @ (push @ X506 @ id))))) & (((X501 @ X506)) = $true)))) | ? [X498 : term] : (((sub @ X498 @ id)) != X498) | ! [X507 : term,X508 : (term > $o)] : (? [X509 : term] : (! [X510 : term] : ((((X508 @ (sub @ X509 @ (push @ X510 @ id)))) = $true) | (((X508 @ X510)) != $true)) & (((X508 @ (lam @ X509))) != $true)) | ? [X511 : term] : ((((var @ X511)) = $true) & (((X508 @ X511)) != $true)) | (((X508 @ X507)) = $true) | ? [X512 : term,X513 : term] : (($true = ((X508 @ X512))) & (((X508 @ X513)) = $true) & ($true != ((X508 @ (ap @ X512 @ X513)))))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f24,plain,(
  ((hoasinduction_lem3v2_lthm = $true) <=> (! [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (? [X488 : term] : (($true = ((X482 @ X488))) & (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) != $true)) | ? [X489 : term] : (((X481 @ id @ X489 @ id)) != ((X482 @ X489))) | ? [X483 : (subst > term > term)] : ((((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) != $true) & ! [X487 : term] : ((((X481 @ id @ X487 @ id)) != $true) | (((X481 @ id @ (X483 @ id @ X487) @ id)) = $true)) & ! [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) = ((sub @ (X483 @ X485 @ X486) @ X484)))) | ? [X491 : subst,X490 : subst,X493 : term,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) != $true) & (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) = $true)) | ($true = ((X482 @ (lam @ X480)))) | ? [X496 : subst,X495 : subst,X497 : subst,X494 : term] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) = $true) & ($true != ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))) | ? [X479 : term] : (((sub @ X479 @ id)) != X479))) & (! [X515 : (subst > term > term),X514 : term,X516 : term] : (? [X517 : term,X519 : subst,X518 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) != ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))) | (((ap @ (sub @ X516 @ id) @ X514)) != ((lam @ (X515 @ sh @ one))))) <=> (hoaslamnotap = $true)) & ((hoasinduction_lem3v2 = $true) <=> ! [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : ((((X349 @ (lam @ X347))) = $true) | ? [X350 : subst,X353 : term,X352 : subst,X351 : subst] : (($true = ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) & ($true != ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) | ? [X364 : term] : (((X349 @ X364)) != ((X348 @ id @ X364 @ id))) | ? [X362 : subst,X361 : term,X360 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) = $true) & ($true != ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) | ? [X363 : term] : (($true = ((X349 @ X363))) & ($true != ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) | ? [X354 : (subst > term > term)] : (! [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) = $true) | (((X348 @ id @ X355 @ id)) != $true)) & ($true != ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) & ! [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) = ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358))))))) & (! [X532 : term,X531 : (subst > term > subst > $o)] : (? [X533 : (subst > term > term)] : (! [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) = $true) | ($true != ((X531 @ id @ X534 @ id)))) & ($true != ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) & ! [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) = ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) | ($true = ((X531 @ id @ X532 @ id))) | ? [X538 : term,X539 : term] : (($true = ((X531 @ id @ X539 @ id))) & ($true = ((X531 @ id @ X538 @ id))) & ($true != ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id))))) <=> (hoasinduction_no_psi_cond = $true)) & (hoasapinj1_gthm = $true) & (hoaslamnotap_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) != ((d2subst @ X91))) | (X91 = X92)) & ((hoasinduction_lem3v2a_lthm = $true) <=> (! [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (($true = ((X267 @ (lam @ X269)))) | ? [X271 : term] : (($true = ((X267 @ X271))) & ($true != ((X267 @ (sub @ X269 @ (push @ X271 @ id)))))) | ? [X270 : term] : (((X268 @ id @ X270 @ id)) != ((X267 @ X270))) | ? [X272 : (subst > term > term)] : (! [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) = ((sub @ (X272 @ X273 @ X275) @ X274))) & ($true != ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))) & ! [X276 : term] : ((((X268 @ id @ X276 @ id)) != $true) | ($true = ((X268 @ id @ (X272 @ id @ X276) @ id)))))) | ? [X266 : term] : (((sub @ X266 @ id)) != X266) | ? [X262 : term] : ! [X263 : (subst > term > term)] : ? [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) != ((X263 @ X264 @ X265))))) & (hoaslamnotvar_lthm = $true) & ((pushprop_lem0 = $true) <=> ! [X36 : term,X35 : (term > $o),X34 : subst] : ? [X37 : (term > $o)] : ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & (hoasinduction_lem2_lthm = $true) & (! [X181 : subst] : (((comp @ X181 @ id)) = X181) <=> (axidr = $true)) & (induction2_gthm = $true) & ! [X118 : d_subst] : (d_id = X118) & ((! [X223 : subst,X226 : (term > $o),X225 : (term > $o),X224 : term] : (? [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) != ((X226 @ X227))) | ($true != ((X225 @ X224))) | ($true = ((X226 @ one)))) | ? [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) != X221)) <=> (pushprop_lem1v2_lthm = $true)) & (pushprop_lthm = $true) & ! [X167 : subst] : ? [X168 : d_subst] : (((d2subst @ X168)) = X167) & ((? [X467 : term,X468 : term] : ((X467 != X468) & (((lam @ X467)) = ((lam @ X468)))) | ? [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) != X465) | ? [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) != X463) | ! [X471 : subst,X470 : (subst > term > term),X469 : term,X472 : (subst > term > term)] : (? [X473 : subst,X475 : term,X474 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) != ((sub @ (X472 @ X473 @ X475) @ X474))) | (((X470 @ X471 @ X469)) = ((X472 @ X471 @ X469))) | (((lam @ (X470 @ sh @ one))) != ((lam @ (X472 @ sh @ one)))) | ? [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) != ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476)))))) <=> (hoaslaminj_lthm = $true)) & (hoasinduction_lem1v2_gthm = $true) & (! [X80 : (subst > term > subst > $o)] : ? [X81 : (term > $o)] : ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82))) <=> (hoasinduction_lem0_lthm = $true)) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & (((d2subst @ d_id)) = sh) & (pushprop_lem3v2_lthm = $true) & ((pushprop_lem1_lthm = $true) <=> (? [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) != X147) | ? [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) != X150) | ! [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true) | (((X153 @ X152)) != $true)))) & (pushprop_lem1v2_gthm = $true) & (! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) <=> (axshiftcons = $true)) & ((apinj1 = $true) <=> ! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125))))) & ((laminj = $true) <=> ! [X219 : term,X218 : term] : ((X218 = X219) | (((lam @ X219)) != ((lam @ X218))))) & (hoasinduction_lem2v2_gthm = $true) & (! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) <=> (apinj2 = $true)) & (lamnotap != $true) & ((induction2_lthm = $true) <=> ($true = sP9)) & (! [X307 : term,X310 : (term > $o),X309 : (subst > term > subst > $o),X308 : term] : (? [X311 : term] : (((X309 @ id @ X311 @ id)) != ((X310 @ X311))) | ? [X313 : term,X312 : term] : (($true = ((X309 @ id @ X313 @ id))) & (((X309 @ id @ X312 @ id)) = $true) & (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) != $true)) | ? [X319 : subst,X320 : subst,X321 : term,X318 : subst] : (($true = ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) & ($true != ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) | (((X310 @ X308)) != $true) | ($true = ((X310 @ (ap @ X307 @ X308)))) | ? [X314 : subst,X317 : subst,X316 : term,X315 : subst] : (($true != ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314))) & ($true = ((X309 @ X315 @ X316 @ (comp @ X317 @ X314))))) | (((X310 @ X307)) != $true)) <=> (hoasinduction_lem2v2 = $true)) & (((! [X329 : subst] : (((comp @ X329 @ id)) = X329) & ! [X328 : subst] : (((comp @ id @ X328)) = X328)) | ? [X327 : subst] : (((comp @ X327 @ id)) != X327) | ? [X326 : subst] : (((comp @ id @ X326)) != X326)) <=> (substmonoid_lthm = $true)) & (pushprop_lem3v2 = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X187 : term,X186 : (subst > term > subst > $o)] : (? [X188 : (subst > term > term)] : (! [X192 : term] : (($true = ((X186 @ id @ (X188 @ id @ X192) @ id))) | ($true != ((X186 @ id @ X192 @ id)))) & ! [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X188 @ X191 @ X189) @ X190))) & ($true != ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id)))) | (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) = $true) | ? [X193 : term] : (($true = ((X186 @ id @ X193 @ id))) & (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) != $true)))) & (pushprop_lem0_gthm = $true) & (! [X27 : subst,X28 : (term > $o),X30 : term,X29 : (term > $o)] : (($true != ((X29 @ X30))) | (((X28 @ one)) = $true) | ? [X31 : term] : (((X28 @ X31)) != ((X29 @ (sub @ X31 @ (push @ X30 @ X27)))))) <=> (pushprop_lem1v2 = $true)) & (hoasinduction_lem3b_gthm = $true) & (axapp = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (((var @ (d2term @ d_one))) != $true) & ! [X141 : d_term,X142 : d_term] : ((X141 = X142) | (((d2term @ X141)) != ((d2term @ X142)))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (induction2lem_gthm = $true) & ((induction2lem_lthm = $true) <=> (sP8 = $true)) & (pushprop_lem2v2 = $true) & (! [X1 : term,X0 : (subst > term > subst > $o)] : (($true = ((X0 @ id @ (lam @ X1) @ id))) | ? [X7 : term] : ((((X0 @ id @ X7 @ id)) = $true) & ($true != ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) | ? [X2 : (subst > term > term)] : (! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) & (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X6 : term] : (($true = ((X0 @ id @ (X2 @ id @ X6) @ id))) | (((X0 @ id @ X6 @ id)) != $true)))) <=> (hoasinduction_lem3a = $true)) & (hoaslaminj_gthm = $true) & ((? [X524 : term,X525 : term,X526 : term,X523 : term] : ((X525 != X526) & (((ap @ X525 @ X523)) = ((ap @ X526 @ X524)))) | ? [X522 : term] : (((sub @ X522 @ id)) != X522) | ! [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) != ((ap @ (sub @ X527 @ id) @ X528))) | (X527 = X529))) <=> (hoasapinj1_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar_lthm = $true) & (((d2term @ d_one)) = one) & ((hoasinduction_lem3v2a = $true) <=> ! [X250 : (subst > term > subst > $o),X251 : (term > $o),X249 : term] : (? [X253 : term] : ((((X251 @ X253)) = $true) & ($true != ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) | ($true = ((X251 @ (lam @ X249)))) | ? [X254 : (subst > term > term)] : (($true != ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) & ! [X258 : term] : (($true = ((X250 @ id @ (X254 @ id @ X258) @ id))) | ($true != ((X250 @ id @ X258 @ id)))) & ! [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) = ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255))))) | ? [X252 : term] : (((X250 @ id @ X252 @ id)) != ((X251 @ X252))))) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((($true = sP7) | ? [X281 : term,X280 : (term > $o)] : (! [X285 : term,X284 : term] : (($true != ((X280 @ X284))) | ($true = ((X280 @ (ap @ X285 @ X284)))) | ($true != ((X280 @ X285)))) & ! [X286 : term] : (($true = ((X280 @ X286))) | ($true != ((var @ X286)))) & ($true != ((X280 @ X281))) & ! [X282 : term] : (($true = ((X280 @ (lam @ X282)))) | ? [X283 : term] : (($true != ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) & ($true = ((X280 @ X283)))))) | ? [X290 : term,X289 : (term > $o),X288 : (subst > term > subst > $o)] : (! [X293 : (subst > term > term)] : (? [X296 : subst,X295 : subst,X297 : term] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) != ((sub @ (X293 @ X295 @ X297) @ X296))) | ? [X294 : term] : ((((X288 @ id @ X294 @ id)) = $true) & (((X288 @ id @ (X293 @ id @ X294) @ id)) != $true)) | ($true = ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id)))) & ! [X291 : term] : (((X289 @ X291)) = ((X288 @ id @ X291 @ id))) & ! [X292 : term] : (($true != ((X289 @ X292))) | ($true = ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) & ($true != ((X289 @ (lam @ X290))))) | ? [X277 : (subst > term > subst > $o)] : ! [X278 : (term > $o)] : ? [X279 : term] : (((X277 @ id @ X279 @ id)) != ((X278 @ X279))) | ? [X287 : term] : (((sub @ X287 @ id)) != X287)) <=> (hoasinduction_no_psi_cond_lthm = $true)) & (axvarshift = $true) & (! [X84 : term,X83 : (subst > term > subst > $o)] : (? [X90 : term] : ((((X83 @ id @ X90 @ id)) = $true) & ($true != ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) | ? [X85 : (subst > term > term)] : (! [X86 : term] : ((((X83 @ id @ X86 @ id)) != $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) & ($true != ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) & ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id)))) <=> (hoasinduction_lem3aa = $true)) & ((induction2lem = $true) <=> ! [X72 : subst,X73 : (term > $o),X74 : term] : (? [X76 : term] : (! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ($true != ((X73 @ X77)))) & ($true != ((X73 @ (lam @ X76))))) | ($true = ((X73 @ (sub @ X74 @ X72)))) | ? [X78 : term,X79 : term] : ((((X73 @ X78)) = $true) & ($true = ((X73 @ X79))) & (((X73 @ (ap @ X78 @ X79))) != $true)) | ? [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) != $true) & (((var @ X75)) = $true)))) & ((hoasinduction = $true) <=> ! [X195 : (subst > term > subst > $o),X194 : term] : (? [X197 : (subst > term > term)] : (($true != ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) & ! [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) = ((sub @ (X197 @ X200 @ X201) @ X199))) & ! [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) = $true) | (((X195 @ id @ X198 @ id)) != $true))) | (((sP6 @ X195)) = $true) | ? [X205 : term,X203 : subst,X204 : subst,X202 : subst] : ((((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) != $true) & (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) = $true)) | ? [X209 : term,X210 : subst,X208 : subst,X211 : subst] : (($true != ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) & ($true = ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) | ? [X196 : term] : (($true != ((X195 @ id @ X196 @ id))) & ($true = ((var @ (sub @ X196 @ id))))) | (((X195 @ id @ X194 @ id)) = $true))) & (pushprop = $true) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (! [X232 : (subst > term > subst > $o),X231 : term] : (? [X246 : term] : ((((X232 @ id @ X246 @ id)) = $true) & (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) != $true)) | ? [X235 : subst,X234 : subst,X233 : term,X236 : subst] : (($true = ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235))) & (((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) != $true)) | ? [X237 : (subst > term > term)] : (! [X238 : term] : ((((X232 @ id @ X238 @ id)) != $true) | (((X232 @ id @ (X237 @ id @ X238) @ id)) = $true)) & ! [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) = ((sub @ (X237 @ X239 @ X241) @ X240))) & (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) != $true)) | ($true = ((X232 @ id @ (lam @ X231) @ id))) | ? [X244 : subst,X242 : subst,X243 : subst,X245 : term] : (($true != ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) & ($true = ((X232 @ X244 @ X245 @ (comp @ X243 @ X242)))))) <=> (hoasinduction_lem3 = $true)) & (hoaslamnotvar_gthm = $true) & (! [X259 : term] : (((sub @ X259 @ id)) = X259) <=> (axvarid = $true)) & (! [X220 : subst] : (((comp @ id @ X220)) = X220) <=> (axidl = $true)) & (pushprop_gthm = $true) & ((hoasinduction_lem0 = $true) <=> ! [X228 : (subst > term > subst > $o)] : ? [X229 : (term > $o)] : ! [X230 : term] : (((X229 @ X230)) = ((X228 @ id @ X230 @ id)))) & (! [X247 : term] : ? [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) = ((X248 @ sh @ one))) <=> (hoasinduction_lem3b_lthm = $true)) & (! [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true != ((X215 @ X214))) | (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) = $true)) <=> (pushprop_lem1 = $true)) & (! [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 = X325) | (((ap @ (sub @ X324 @ id) @ X325)) != ((ap @ (sub @ X322 @ id) @ X323)))) <=> (hoasapinj2 = $true)) & (! [X93 : (term > $o),X94 : term] : ((((X93 @ X94)) = $true) | ? [X95 : term,X96 : term] : (($true = ((X93 @ X95))) & ($true = ((X93 @ X96))) & ($true != ((X93 @ (ap @ X95 @ X96))))) | ? [X98 : term] : (($true = ((X93 @ X98))) & ($true != ((X93 @ (lam @ X98))))) | ? [X97 : term] : (($true != ((X93 @ X97))) & (((var @ X97)) = $true))) <=> (induction = $true)) & (termmset_gthm = $true) & ((substmonoid = $true) <=> (! [X520 : subst] : (((comp @ X520 @ id)) = X520) & ! [X521 : subst] : (((comp @ id @ X521)) = X521))) & (hoasinduction_lem1v2 = $true) & (axmap = $true) & (! [X171 : (subst > term > term),X172 : (subst > term > term),X174 : subst,X173 : term] : (? [X178 : subst,X180 : term,X179 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) != ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) | ? [X177 : subst,X176 : term,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) != ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))) | (((lam @ (X171 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((X172 @ X174 @ X173)) = ((X171 @ X174 @ X173)))) <=> (hoaslaminj = $true)) & ((? [X32 : term] : (((sub @ X32 @ id)) != X32) | ! [X33 : term] : (((sub @ X33 @ id)) = X33)) <=> (termmset_lthm = $true)) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem3v2_f = $true) <=> ! [X182 : term] : ? [X183 : (subst > term > term)] : ! [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) = ((X183 @ X184 @ X185)))) & (apnotvar = $true) & ((axscons = $true) <=> ! [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) = X170)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axabs = $true) & ((hoasinduction_lem2 = $true) <=> ! [X331 : term,X330 : term,X332 : (subst > term > subst > $o)] : (? [X342 : term,X341 : term] : ((((X332 @ id @ X341 @ id)) = $true) & (((X332 @ id @ X342 @ id)) = $true) & (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) != $true)) | ($true = ((X332 @ id @ (ap @ X331 @ X330) @ id))) | ? [X339 : term,X337 : subst,X338 : subst,X340 : subst] : (($true != ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) & (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) = $true)) | ? [X333 : subst,X334 : term,X335 : subst,X336 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) = $true) & ($true != ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) | ($true != ((X332 @ id @ X331 @ id))) | (((X332 @ id @ X330 @ id)) != $true))) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X130 : term,X129 : (subst > term > subst > $o)] : ((((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true) | ? [X131 : term] : (($true = ((X129 @ id @ X131 @ id))) & (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) != $true)) | ? [X133 : (subst > term > term),X132 : term] : (! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) & ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | (((X129 @ id @ X140 @ id)) != $true)) & (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) != $true) & ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139)))))) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (axclos = $true) & (! [X157 : term,X156 : term] : ((X156 = X157) | (((sub @ X157 @ sh)) != ((sub @ X156 @ sh)))) <=> (shinj = $true)) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (hoasinduction_lem1_lthm = $true) & ((? [X39 : term] : (((sub @ X39 @ id)) != X39) | ($true = sP5) | ? [X40 : (subst > term > subst > $o),X41 : term] : (! [X43 : (subst > term > term)] : (? [X47 : subst,X46 : subst,X45 : term] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) != ((sub @ (X43 @ X47 @ X45) @ X46))) | ? [X44 : term] : (($true = ((X40 @ id @ X44 @ id))) & ($true != ((X40 @ id @ (X43 @ id @ X44) @ id)))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) & ! [X42 : term] : (($true != ((X40 @ id @ X42 @ id))) | (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true)) & ($true != ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id))))) <=> (hoasinduction_lem3_lthm = $true)) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ! [X169 : d_term] : (d_one = X169) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X110 : term,X111 : (subst > term > subst > $o)] : (? [X112 : term] : (($true != ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) & ($true = ((X111 @ id @ X112 @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ? [X113 : (subst > term > term)] : (($true != ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) & ! [X114 : term] : (($true = ((X111 @ id @ (X113 @ id @ X114) @ id))) | (((X111 @ id @ X114 @ id)) != $true)) & ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))))) | ? [X101 : term] : (((sub @ X101 @ id)) != X101) | ? [X102 : (subst > term > subst > $o),X103 : term] : (! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ? [X106 : term] : ((((X102 @ id @ X106 @ id)) = $true) & (((X102 @ id @ (X105 @ id @ X106) @ id)) != $true)) | ? [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) != ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) & ($true != ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) & ! [X104 : term] : ((((X102 @ id @ X104 @ id)) != $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id))))))) & (! [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) = X260) <=> (axvarcons = $true)) & (hoaslamnotvar = $true) & (hoasinduction_lem3_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (? [X66 : term,X65 : term,X67 : term,X64 : term] : ((X64 != X66) & (((ap @ X67 @ X66)) = ((ap @ X65 @ X64)))) | ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))))) & ((hoasinduction_lthm_3 = $true) <=> (? [X435 : (term > $o),X437 : term,X436 : (subst > term > subst > $o)] : (($true != ((X435 @ (lam @ X437)))) & ! [X444 : term] : (($true = ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) | (((X435 @ X444)) != $true)) & ! [X439 : (subst > term > term)] : (? [X440 : term] : ((((X436 @ id @ X440 @ id)) = $true) & ($true != ((X436 @ id @ (X439 @ id @ X440) @ id)))) | (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) = $true) | ? [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) != ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) & ! [X438 : term] : (((X435 @ X438)) = ((X436 @ id @ X438 @ id)))) | ? [X427 : term,X428 : (term > $o)] : (! [X433 : term,X432 : term] : (($true != ((X428 @ X432))) | ($true = ((X428 @ (ap @ X432 @ X433)))) | ($true != ((X428 @ X433)))) & ! [X429 : term] : ((((X428 @ X429)) = $true) | ($true != ((var @ X429)))) & ! [X430 : term] : (($true = ((X428 @ (lam @ X430)))) | ? [X431 : term] : ((((X428 @ (sub @ X430 @ (push @ X431 @ id)))) != $true) & ($true = ((X428 @ X431))))) & ($true != ((X428 @ X427)))) | ($true = sP4) | ? [X424 : (subst > term > subst > $o)] : ! [X425 : (term > $o)] : ? [X426 : term] : (((X424 @ id @ X426 @ id)) != ((X425 @ X426))) | ? [X434 : term] : (((sub @ X434 @ id)) != X434))) & (substmonoid_gthm = $true) & (! [X343 : term] : ? [X344 : (subst > term > term)] : ! [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) = ((X344 @ X346 @ X345))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (axassoc = $true) & (! [X367 : subst,X365 : (term > $o),X366 : term] : ? [X368 : (term > $o)] : ! [X369 : term] : (((X368 @ X369)) = ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))) <=> (pushprop_lem0_lthm = $true)) & (! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) <=> (hoasapinj1 = $true)) & (hoasapnotvar = $true) & ((hoasinduction_lthm = $true) <=> (? [X379 : term,X378 : (subst > term > subst > $o),X377 : term] : (! [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true != ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) | ($true = ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) & ($true = ((X378 @ id @ X379 @ id))) & ! [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) != $true) | (((X378 @ id @ X381 @ id)) != $true) | (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) = $true)) & ! [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) != $true) | ($true = ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) & ($true != ((X378 @ id @ (ap @ X377 @ X379) @ id))) & ($true = ((X378 @ id @ X377 @ id)))) | ? [X371 : (term > $o),X370 : term] : (! [X372 : term] : (($true = ((X371 @ (lam @ X372)))) | ? [X373 : term] : ((((X371 @ X373)) = $true) & (((X371 @ (sub @ X372 @ (push @ X373 @ id)))) != $true))) & ! [X374 : term] : ((((var @ X374)) != $true) | ($true = ((X371 @ X374)))) & ! [X375 : term,X376 : term] : (($true = ((X371 @ (ap @ X376 @ X375)))) | (((X371 @ X375)) != $true) | ($true != ((X371 @ X376)))) & (((X371 @ X370)) != $true)) | (sP2 = $true) | ($true = sP1))) & (! [X217 : term] : (((sub @ X217 @ id)) = X217) <=> (termmset = $true)) & (ulamvarsh = $true) & (id = ((d2subst @ d_id))) & (! [X165 : term] : ? [X166 : (subst > term > term)] : (((X166 @ sh @ one)) = ((sub @ X165 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & (! [X159 : (term > $o),X158 : term] : (($true = ((X159 @ X158))) | ? [X163 : term] : (! [X164 : term] : (($true = ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) | ($true != ((X159 @ X164)))) & (((X159 @ (lam @ X163))) != $true)) | ? [X160 : term,X161 : term] : (($true != ((X159 @ (ap @ X160 @ X161)))) & (((X159 @ X161)) = $true) & (((X159 @ X160)) = $true)) | ? [X162 : term] : (($true != ((X159 @ X162))) & (((var @ X162)) = $true))) <=> (induction2 = $true)) & (pushprop_lthm_orig = $true) & (lamnotvar = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem1_gthm = $true)),
  inference(definition_folding,[],[f11,f23,f22,f21,f20,f19,f18,f17,f16,f15,f14])).
thf(f57,plain,(
  (((hoasinduction_lem3v2_lthm = $true) | (? [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (! [X488 : term] : (($true != ((X482 @ X488))) | (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) = $true)) & ! [X489 : term] : (((X481 @ id @ X489 @ id)) = ((X482 @ X489))) & ! [X483 : (subst > term > term)] : ((((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) = $true) | ? [X487 : term] : ((((X481 @ id @ X487 @ id)) = $true) & (((X481 @ id @ (X483 @ id @ X487) @ id)) != $true)) | ? [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) != ((sub @ (X483 @ X485 @ X486) @ X484)))) & ! [X491 : subst,X490 : subst,X493 : term,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) = $true) | (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) != $true)) & ($true != ((X482 @ (lam @ X480)))) & ! [X496 : subst,X495 : subst,X497 : subst,X494 : term] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) != $true) | ($true = ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))) & ! [X479 : term] : (((sub @ X479 @ id)) = X479))) & ((! [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (? [X488 : term] : (($true = ((X482 @ X488))) & (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) != $true)) | ? [X489 : term] : (((X481 @ id @ X489 @ id)) != ((X482 @ X489))) | ? [X483 : (subst > term > term)] : ((((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) != $true) & ! [X487 : term] : ((((X481 @ id @ X487 @ id)) != $true) | (((X481 @ id @ (X483 @ id @ X487) @ id)) = $true)) & ! [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) = ((sub @ (X483 @ X485 @ X486) @ X484)))) | ? [X491 : subst,X490 : subst,X493 : term,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) != $true) & (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) = $true)) | ($true = ((X482 @ (lam @ X480)))) | ? [X496 : subst,X495 : subst,X497 : subst,X494 : term] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) = $true) & ($true != ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))) | ? [X479 : term] : (((sub @ X479 @ id)) != X479)) | (hoasinduction_lem3v2_lthm != $true))) & ((! [X515 : (subst > term > term),X514 : term,X516 : term] : (? [X517 : term,X519 : subst,X518 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) != ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))) | (((ap @ (sub @ X516 @ id) @ X514)) != ((lam @ (X515 @ sh @ one))))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X515 : (subst > term > term),X514 : term,X516 : term] : (! [X517 : term,X519 : subst,X518 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) = ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))) & (((ap @ (sub @ X516 @ id) @ X514)) = ((lam @ (X515 @ sh @ one))))))) & (((hoasinduction_lem3v2 = $true) | ? [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : ((((X349 @ (lam @ X347))) != $true) & ! [X350 : subst,X353 : term,X352 : subst,X351 : subst] : (($true != ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) | ($true = ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) & ! [X364 : term] : (((X349 @ X364)) = ((X348 @ id @ X364 @ id))) & ! [X362 : subst,X361 : term,X360 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) != $true) | ($true = ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) & ! [X363 : term] : (($true != ((X349 @ X363))) | ($true = ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) & ! [X354 : (subst > term > term)] : (? [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) != $true) & (((X348 @ id @ X355 @ id)) = $true)) | ($true = ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) | ? [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) != ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358))))))) & (! [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : ((((X349 @ (lam @ X347))) = $true) | ? [X350 : subst,X353 : term,X352 : subst,X351 : subst] : (($true = ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) & ($true != ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) | ? [X364 : term] : (((X349 @ X364)) != ((X348 @ id @ X364 @ id))) | ? [X362 : subst,X361 : term,X360 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) = $true) & ($true != ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) | ? [X363 : term] : (($true = ((X349 @ X363))) & ($true != ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) | ? [X354 : (subst > term > term)] : (! [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) = $true) | (((X348 @ id @ X355 @ id)) != $true)) & ($true != ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) & ! [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) = ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358)))))) | (hoasinduction_lem3v2 != $true))) & ((! [X532 : term,X531 : (subst > term > subst > $o)] : (? [X533 : (subst > term > term)] : (! [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) = $true) | ($true != ((X531 @ id @ X534 @ id)))) & ($true != ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) & ! [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) = ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) | ($true = ((X531 @ id @ X532 @ id))) | ? [X538 : term,X539 : term] : (($true = ((X531 @ id @ X539 @ id))) & ($true = ((X531 @ id @ X538 @ id))) & ($true != ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id))))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X532 : term,X531 : (subst > term > subst > $o)] : (! [X533 : (subst > term > term)] : (? [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) != $true) & ($true = ((X531 @ id @ X534 @ id)))) | ($true = ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) | ? [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) != ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) & ($true != ((X531 @ id @ X532 @ id))) & ! [X538 : term,X539 : term] : (($true != ((X531 @ id @ X539 @ id))) | ($true != ((X531 @ id @ X538 @ id))) | ($true = ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id))))))) & (hoasapinj1_gthm = $true) & (hoaslamnotap_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) != ((d2subst @ X91))) | (X91 = X92)) & (((hoasinduction_lem3v2a_lthm = $true) | (? [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (($true != ((X267 @ (lam @ X269)))) & ! [X271 : term] : (($true != ((X267 @ X271))) | ($true = ((X267 @ (sub @ X269 @ (push @ X271 @ id)))))) & ! [X270 : term] : (((X268 @ id @ X270 @ id)) = ((X267 @ X270))) & ! [X272 : (subst > term > term)] : (? [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) != ((sub @ (X272 @ X273 @ X275) @ X274))) | ($true = ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))) | ? [X276 : term] : ((((X268 @ id @ X276 @ id)) = $true) & ($true != ((X268 @ id @ (X272 @ id @ X276) @ id)))))) & ! [X266 : term] : (((sub @ X266 @ id)) = X266) & ! [X262 : term] : ? [X263 : (subst > term > term)] : ! [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) = ((X263 @ X264 @ X265))))) & ((! [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (($true = ((X267 @ (lam @ X269)))) | ? [X271 : term] : (($true = ((X267 @ X271))) & ($true != ((X267 @ (sub @ X269 @ (push @ X271 @ id)))))) | ? [X270 : term] : (((X268 @ id @ X270 @ id)) != ((X267 @ X270))) | ? [X272 : (subst > term > term)] : (! [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) = ((sub @ (X272 @ X273 @ X275) @ X274))) & ($true != ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))) & ! [X276 : term] : ((((X268 @ id @ X276 @ id)) != $true) | ($true = ((X268 @ id @ (X272 @ id @ X276) @ id)))))) | ? [X266 : term] : (((sub @ X266 @ id)) != X266) | ? [X262 : term] : ! [X263 : (subst > term > term)] : ? [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) != ((X263 @ X264 @ X265)))) | (hoasinduction_lem3v2a_lthm != $true))) & (hoaslamnotvar_lthm = $true) & (((pushprop_lem0 = $true) | ? [X36 : term,X35 : (term > $o),X34 : subst] : ! [X37 : (term > $o)] : ? [X38 : term] : (((X37 @ X38)) != ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & (! [X36 : term,X35 : (term > $o),X34 : subst] : ? [X37 : (term > $o)] : ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34))))) | (pushprop_lem0 != $true))) & (hoasinduction_lem2_lthm = $true) & ((! [X181 : subst] : (((comp @ X181 @ id)) = X181) | (axidr != $true)) & ((axidr = $true) | ? [X181 : subst] : (((comp @ X181 @ id)) != X181))) & (induction2_gthm = $true) & ! [X118 : d_subst] : (d_id = X118) & (((! [X223 : subst,X226 : (term > $o),X225 : (term > $o),X224 : term] : (? [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) != ((X226 @ X227))) | ($true != ((X225 @ X224))) | ($true = ((X226 @ one)))) | ? [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) != X221)) | (pushprop_lem1v2_lthm != $true)) & ((pushprop_lem1v2_lthm = $true) | (? [X223 : subst,X226 : (term > $o),X225 : (term > $o),X224 : term] : (! [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) = ((X226 @ X227))) & ($true = ((X225 @ X224))) & ($true != ((X226 @ one)))) & ! [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) = X221)))) & (pushprop_lthm = $true) & ! [X167 : subst] : ? [X168 : d_subst] : (((d2subst @ X168)) = X167) & (((? [X467 : term,X468 : term] : ((X467 != X468) & (((lam @ X467)) = ((lam @ X468)))) | ? [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) != X465) | ? [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) != X463) | ! [X471 : subst,X470 : (subst > term > term),X469 : term,X472 : (subst > term > term)] : (? [X473 : subst,X475 : term,X474 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) != ((sub @ (X472 @ X473 @ X475) @ X474))) | (((X470 @ X471 @ X469)) = ((X472 @ X471 @ X469))) | (((lam @ (X470 @ sh @ one))) != ((lam @ (X472 @ sh @ one)))) | ? [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) != ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476)))))) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (! [X467 : term,X468 : term] : ((X467 = X468) | (((lam @ X467)) != ((lam @ X468)))) & ! [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) = X465) & ! [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) = X463) & ? [X471 : subst,X470 : (subst > term > term),X469 : term,X472 : (subst > term > term)] : (! [X473 : subst,X475 : term,X474 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) = ((sub @ (X472 @ X473 @ X475) @ X474))) & (((X470 @ X471 @ X469)) != ((X472 @ X471 @ X469))) & (((lam @ (X470 @ sh @ one))) = ((lam @ (X472 @ sh @ one)))) & ! [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) = ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476)))))))) & (hoasinduction_lem1v2_gthm = $true) & ((! [X80 : (subst > term > subst > $o)] : ? [X81 : (term > $o)] : ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82))) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X80 : (subst > term > subst > $o)] : ! [X81 : (term > $o)] : ? [X82 : term] : (((X80 @ id @ X82 @ id)) != ((X81 @ X82))))) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & (((d2subst @ d_id)) = sh) & (pushprop_lem3v2_lthm = $true) & (((pushprop_lem1_lthm = $true) | (! [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) = X147) & ! [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) = X150) & ? [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) != $true) & (((X153 @ X152)) = $true)))) & ((? [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) != X147) | ? [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) != X150) | ! [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true) | (((X153 @ X152)) != $true))) | (pushprop_lem1_lthm != $true))) & (pushprop_lem1v2_gthm = $true) & ((! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) != X99))) & (((apinj1 = $true) | ? [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 != X127) & (((ap @ X127 @ X128)) = ((ap @ X126 @ X125))))) & (! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125)))) | (apinj1 != $true))) & (((laminj = $true) | ? [X219 : term,X218 : term] : ((X218 != X219) & (((lam @ X219)) = ((lam @ X218))))) & (! [X219 : term,X218 : term] : ((X218 = X219) | (((lam @ X219)) != ((lam @ X218)))) | (laminj != $true))) & (hoasinduction_lem2v2_gthm = $true) & ((! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 != X146) & (((ap @ X144 @ X146)) = ((ap @ X143 @ X145)))))) & (lamnotap != $true) & (((induction2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (induction2_lthm != $true))) & ((! [X307 : term,X310 : (term > $o),X309 : (subst > term > subst > $o),X308 : term] : (? [X311 : term] : (((X309 @ id @ X311 @ id)) != ((X310 @ X311))) | ? [X313 : term,X312 : term] : (($true = ((X309 @ id @ X313 @ id))) & (((X309 @ id @ X312 @ id)) = $true) & (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) != $true)) | ? [X319 : subst,X320 : subst,X321 : term,X318 : subst] : (($true = ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) & ($true != ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) | (((X310 @ X308)) != $true) | ($true = ((X310 @ (ap @ X307 @ X308)))) | ? [X314 : subst,X317 : subst,X316 : term,X315 : subst] : (($true != ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314))) & ($true = ((X309 @ X315 @ X316 @ (comp @ X317 @ X314))))) | (((X310 @ X307)) != $true)) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ? [X307 : term,X310 : (term > $o),X309 : (subst > term > subst > $o),X308 : term] : (! [X311 : term] : (((X309 @ id @ X311 @ id)) = ((X310 @ X311))) & ! [X313 : term,X312 : term] : (($true != ((X309 @ id @ X313 @ id))) | (((X309 @ id @ X312 @ id)) != $true) | (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) = $true)) & ! [X319 : subst,X320 : subst,X321 : term,X318 : subst] : (($true != ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) | ($true = ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) & (((X310 @ X308)) = $true) & ($true != ((X310 @ (ap @ X307 @ X308)))) & ! [X314 : subst,X317 : subst,X316 : term,X315 : subst] : (($true = ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314))) | ($true != ((X309 @ X315 @ X316 @ (comp @ X317 @ X314))))) & (((X310 @ X307)) = $true)))) & ((((! [X329 : subst] : (((comp @ X329 @ id)) = X329) & ! [X328 : subst] : (((comp @ id @ X328)) = X328)) | ? [X327 : subst] : (((comp @ X327 @ id)) != X327) | ? [X326 : subst] : (((comp @ id @ X326)) != X326)) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ((? [X329 : subst] : (((comp @ X329 @ id)) != X329) | ? [X328 : subst] : (((comp @ id @ X328)) != X328)) & ! [X327 : subst] : (((comp @ X327 @ id)) = X327) & ! [X326 : subst] : (((comp @ id @ X326)) = X326)))) & (pushprop_lem3v2 = $true) & (((hoasinduction_lem3aa_lthm = $true) | ? [X187 : term,X186 : (subst > term > subst > $o)] : (! [X188 : (subst > term > term)] : (? [X192 : term] : (($true != ((X186 @ id @ (X188 @ id @ X192) @ id))) & ($true = ((X186 @ id @ X192 @ id)))) | ? [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) != ((sub @ (X188 @ X191 @ X189) @ X190))) | ($true = ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id)))) & (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) != $true) & ! [X193 : term] : (($true != ((X186 @ id @ X193 @ id))) | (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) = $true)))) & (! [X187 : term,X186 : (subst > term > subst > $o)] : (? [X188 : (subst > term > term)] : (! [X192 : term] : (($true = ((X186 @ id @ (X188 @ id @ X192) @ id))) | ($true != ((X186 @ id @ X192 @ id)))) & ! [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X188 @ X191 @ X189) @ X190))) & ($true != ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id)))) | (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) = $true) | ? [X193 : term] : (($true = ((X186 @ id @ X193 @ id))) & (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) != $true))) | (hoasinduction_lem3aa_lthm != $true))) & (pushprop_lem0_gthm = $true) & ((! [X27 : subst,X28 : (term > $o),X30 : term,X29 : (term > $o)] : (($true != ((X29 @ X30))) | (((X28 @ one)) = $true) | ? [X31 : term] : (((X28 @ X31)) != ((X29 @ (sub @ X31 @ (push @ X30 @ X27)))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X27 : subst,X28 : (term > $o),X30 : term,X29 : (term > $o)] : (($true = ((X29 @ X30))) & (((X28 @ one)) != $true) & ! [X31 : term] : (((X28 @ X31)) = ((X29 @ (sub @ X31 @ (push @ X30 @ X27)))))))) & (hoasinduction_lem3b_gthm = $true) & (axapp = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (((var @ (d2term @ d_one))) != $true) & ! [X141 : d_term,X142 : d_term] : ((X141 = X142) | (((d2term @ X141)) != ((d2term @ X142)))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (induction2lem_gthm = $true) & (((induction2lem_lthm = $true) | (sP8 != $true)) & ((sP8 = $true) | (induction2lem_lthm != $true))) & (pushprop_lem2v2 = $true) & ((! [X1 : term,X0 : (subst > term > subst > $o)] : (($true = ((X0 @ id @ (lam @ X1) @ id))) | ? [X7 : term] : ((((X0 @ id @ X7 @ id)) = $true) & ($true != ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) | ? [X2 : (subst > term > term)] : (! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) & (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X6 : term] : (($true = ((X0 @ id @ (X2 @ id @ X6) @ id))) | (((X0 @ id @ X6 @ id)) != $true)))) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ? [X1 : term,X0 : (subst > term > subst > $o)] : (($true != ((X0 @ id @ (lam @ X1) @ id))) & ! [X7 : term] : ((((X0 @ id @ X7 @ id)) != $true) | ($true = ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) & ! [X2 : (subst > term > term)] : (? [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) != ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) | (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true) | ? [X6 : term] : (($true != ((X0 @ id @ (X2 @ id @ X6) @ id))) & (((X0 @ id @ X6 @ id)) = $true)))))) & (hoaslaminj_gthm = $true) & (((? [X524 : term,X525 : term,X526 : term,X523 : term] : ((X525 != X526) & (((ap @ X525 @ X523)) = ((ap @ X526 @ X524)))) | ? [X522 : term] : (((sub @ X522 @ id)) != X522) | ! [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) != ((ap @ (sub @ X527 @ id) @ X528))) | (X527 = X529))) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X524 : term,X525 : term,X526 : term,X523 : term] : ((X525 = X526) | (((ap @ X525 @ X523)) != ((ap @ X526 @ X524)))) & ! [X522 : term] : (((sub @ X522 @ id)) = X522) & ? [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) = ((ap @ (sub @ X527 @ id) @ X528))) & (X527 != X529))))) & (hoasinduction_lem1 = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar_lthm = $true) & (((d2term @ d_one)) = one) & (((hoasinduction_lem3v2a = $true) | ? [X250 : (subst > term > subst > $o),X251 : (term > $o),X249 : term] : (! [X253 : term] : ((((X251 @ X253)) != $true) | ($true = ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) & ($true != ((X251 @ (lam @ X249)))) & ! [X254 : (subst > term > term)] : (($true = ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) | ? [X258 : term] : (($true != ((X250 @ id @ (X254 @ id @ X258) @ id))) & ($true = ((X250 @ id @ X258 @ id)))) | ? [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) != ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255))))) & ! [X252 : term] : (((X250 @ id @ X252 @ id)) = ((X251 @ X252))))) & (! [X250 : (subst > term > subst > $o),X251 : (term > $o),X249 : term] : (? [X253 : term] : ((((X251 @ X253)) = $true) & ($true != ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) | ($true = ((X251 @ (lam @ X249)))) | ? [X254 : (subst > term > term)] : (($true != ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) & ! [X258 : term] : (($true = ((X250 @ id @ (X254 @ id @ X258) @ id))) | ($true != ((X250 @ id @ X258 @ id)))) & ! [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) = ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255))))) | ? [X252 : term] : (((X250 @ id @ X252 @ id)) != ((X251 @ X252)))) | (hoasinduction_lem3v2a != $true))) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (((($true = sP7) | ? [X281 : term,X280 : (term > $o)] : (! [X285 : term,X284 : term] : (($true != ((X280 @ X284))) | ($true = ((X280 @ (ap @ X285 @ X284)))) | ($true != ((X280 @ X285)))) & ! [X286 : term] : (($true = ((X280 @ X286))) | ($true != ((var @ X286)))) & ($true != ((X280 @ X281))) & ! [X282 : term] : (($true = ((X280 @ (lam @ X282)))) | ? [X283 : term] : (($true != ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) & ($true = ((X280 @ X283)))))) | ? [X290 : term,X289 : (term > $o),X288 : (subst > term > subst > $o)] : (! [X293 : (subst > term > term)] : (? [X296 : subst,X295 : subst,X297 : term] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) != ((sub @ (X293 @ X295 @ X297) @ X296))) | ? [X294 : term] : ((((X288 @ id @ X294 @ id)) = $true) & (((X288 @ id @ (X293 @ id @ X294) @ id)) != $true)) | ($true = ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id)))) & ! [X291 : term] : (((X289 @ X291)) = ((X288 @ id @ X291 @ id))) & ! [X292 : term] : (($true != ((X289 @ X292))) | ($true = ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) & ($true != ((X289 @ (lam @ X290))))) | ? [X277 : (subst > term > subst > $o)] : ! [X278 : (term > $o)] : ? [X279 : term] : (((X277 @ id @ X279 @ id)) != ((X278 @ X279))) | ? [X287 : term] : (((sub @ X287 @ id)) != X287)) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP7) & ! [X281 : term,X280 : (term > $o)] : (? [X285 : term,X284 : term] : (($true = ((X280 @ X284))) & ($true != ((X280 @ (ap @ X285 @ X284)))) & ($true = ((X280 @ X285)))) | ? [X286 : term] : (($true != ((X280 @ X286))) & ($true = ((var @ X286)))) | ($true = ((X280 @ X281))) | ? [X282 : term] : (($true != ((X280 @ (lam @ X282)))) & ! [X283 : term] : (($true = ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) | ($true != ((X280 @ X283)))))) & ! [X290 : term,X289 : (term > $o),X288 : (subst > term > subst > $o)] : (? [X293 : (subst > term > term)] : (! [X296 : subst,X295 : subst,X297 : term] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) = ((sub @ (X293 @ X295 @ X297) @ X296))) & ! [X294 : term] : ((((X288 @ id @ X294 @ id)) != $true) | (((X288 @ id @ (X293 @ id @ X294) @ id)) = $true)) & ($true != ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id)))) | ? [X291 : term] : (((X289 @ X291)) != ((X288 @ id @ X291 @ id))) | ? [X292 : term] : (($true = ((X289 @ X292))) & ($true != ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) | ($true = ((X289 @ (lam @ X290))))) & ! [X277 : (subst > term > subst > $o)] : ? [X278 : (term > $o)] : ! [X279 : term] : (((X277 @ id @ X279 @ id)) = ((X278 @ X279))) & ! [X287 : term] : (((sub @ X287 @ id)) = X287)))) & (axvarshift = $true) & ((! [X84 : term,X83 : (subst > term > subst > $o)] : (? [X90 : term] : ((((X83 @ id @ X90 @ id)) = $true) & ($true != ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) | ? [X85 : (subst > term > term)] : (! [X86 : term] : ((((X83 @ id @ X86 @ id)) != $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) & ($true != ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) & ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ? [X84 : term,X83 : (subst > term > subst > $o)] : (! [X90 : term] : ((((X83 @ id @ X90 @ id)) != $true) | ($true = ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) & ! [X85 : (subst > term > term)] : (? [X86 : term] : ((((X83 @ id @ X86 @ id)) = $true) & ($true != ((X83 @ id @ (X85 @ id @ X86) @ id)))) | ($true = ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) | ? [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) != ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) & ($true != ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id)))))) & (((induction2lem = $true) | ? [X72 : subst,X73 : (term > $o),X74 : term] : (! [X76 : term] : (? [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) != $true) & ($true = ((X73 @ X77)))) | ($true = ((X73 @ (lam @ X76))))) & ($true != ((X73 @ (sub @ X74 @ X72)))) & ! [X78 : term,X79 : term] : ((((X73 @ X78)) != $true) | ($true != ((X73 @ X79))) | (((X73 @ (ap @ X78 @ X79))) = $true)) & ! [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) = $true) | (((var @ X75)) != $true)))) & (! [X72 : subst,X73 : (term > $o),X74 : term] : (? [X76 : term] : (! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ($true != ((X73 @ X77)))) & ($true != ((X73 @ (lam @ X76))))) | ($true = ((X73 @ (sub @ X74 @ X72)))) | ? [X78 : term,X79 : term] : ((((X73 @ X78)) = $true) & ($true = ((X73 @ X79))) & (((X73 @ (ap @ X78 @ X79))) != $true)) | ? [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) != $true) & (((var @ X75)) = $true))) | (induction2lem != $true))) & (((hoasinduction = $true) | ? [X195 : (subst > term > subst > $o),X194 : term] : (! [X197 : (subst > term > term)] : (($true = ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) | ? [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) != ((sub @ (X197 @ X200 @ X201) @ X199))) | ? [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) != $true) & (((X195 @ id @ X198 @ id)) = $true))) & (((sP6 @ X195)) != $true) & ! [X205 : term,X203 : subst,X204 : subst,X202 : subst] : ((((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) = $true) | (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) != $true)) & ! [X209 : term,X210 : subst,X208 : subst,X211 : subst] : (($true = ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) | ($true != ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) & ! [X196 : term] : (($true = ((X195 @ id @ X196 @ id))) | ($true != ((var @ (sub @ X196 @ id))))) & (((X195 @ id @ X194 @ id)) != $true))) & (! [X195 : (subst > term > subst > $o),X194 : term] : (? [X197 : (subst > term > term)] : (($true != ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) & ! [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) = ((sub @ (X197 @ X200 @ X201) @ X199))) & ! [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) = $true) | (((X195 @ id @ X198 @ id)) != $true))) | (((sP6 @ X195)) = $true) | ? [X205 : term,X203 : subst,X204 : subst,X202 : subst] : ((((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) != $true) & (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) = $true)) | ? [X209 : term,X210 : subst,X208 : subst,X211 : subst] : (($true != ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) & ($true = ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) | ? [X196 : term] : (($true != ((X195 @ id @ X196 @ id))) & ($true = ((var @ (sub @ X196 @ id))))) | (((X195 @ id @ X194 @ id)) = $true)) | (hoasinduction != $true))) & (pushprop = $true) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((! [X232 : (subst > term > subst > $o),X231 : term] : (? [X246 : term] : ((((X232 @ id @ X246 @ id)) = $true) & (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) != $true)) | ? [X235 : subst,X234 : subst,X233 : term,X236 : subst] : (($true = ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235))) & (((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) != $true)) | ? [X237 : (subst > term > term)] : (! [X238 : term] : ((((X232 @ id @ X238 @ id)) != $true) | (((X232 @ id @ (X237 @ id @ X238) @ id)) = $true)) & ! [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) = ((sub @ (X237 @ X239 @ X241) @ X240))) & (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) != $true)) | ($true = ((X232 @ id @ (lam @ X231) @ id))) | ? [X244 : subst,X242 : subst,X243 : subst,X245 : term] : (($true != ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) & ($true = ((X232 @ X244 @ X245 @ (comp @ X243 @ X242)))))) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ? [X232 : (subst > term > subst > $o),X231 : term] : (! [X246 : term] : ((((X232 @ id @ X246 @ id)) != $true) | (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) = $true)) & ! [X235 : subst,X234 : subst,X233 : term,X236 : subst] : (($true != ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235))) | (((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) = $true)) & ! [X237 : (subst > term > term)] : (? [X238 : term] : ((((X232 @ id @ X238 @ id)) = $true) & (((X232 @ id @ (X237 @ id @ X238) @ id)) != $true)) | ? [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) != ((sub @ (X237 @ X239 @ X241) @ X240))) | (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) = $true)) & ($true != ((X232 @ id @ (lam @ X231) @ id))) & ! [X244 : subst,X242 : subst,X243 : subst,X245 : term] : (($true = ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) | ($true != ((X232 @ X244 @ X245 @ (comp @ X243 @ X242)))))))) & (hoaslamnotvar_gthm = $true) & ((! [X259 : term] : (((sub @ X259 @ id)) = X259) | (axvarid != $true)) & ((axvarid = $true) | ? [X259 : term] : (((sub @ X259 @ id)) != X259))) & ((! [X220 : subst] : (((comp @ id @ X220)) = X220) | (axidl != $true)) & ((axidl = $true) | ? [X220 : subst] : (((comp @ id @ X220)) != X220))) & (pushprop_gthm = $true) & (((hoasinduction_lem0 = $true) | ? [X228 : (subst > term > subst > $o)] : ! [X229 : (term > $o)] : ? [X230 : term] : (((X229 @ X230)) != ((X228 @ id @ X230 @ id)))) & (! [X228 : (subst > term > subst > $o)] : ? [X229 : (term > $o)] : ! [X230 : term] : (((X229 @ X230)) = ((X228 @ id @ X230 @ id))) | (hoasinduction_lem0 != $true))) & ((! [X247 : term] : ? [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) = ((X248 @ sh @ one))) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X247 : term] : ! [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) != ((X248 @ sh @ one))))) & ((! [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true != ((X215 @ X214))) | (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) = $true)) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true = ((X215 @ X214))) & (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) != $true)))) & ((! [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 = X325) | (((ap @ (sub @ X324 @ id) @ X325)) != ((ap @ (sub @ X322 @ id) @ X323)))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 != X325) & (((ap @ (sub @ X324 @ id) @ X325)) = ((ap @ (sub @ X322 @ id) @ X323)))))) & ((! [X93 : (term > $o),X94 : term] : ((((X93 @ X94)) = $true) | ? [X95 : term,X96 : term] : (($true = ((X93 @ X95))) & ($true = ((X93 @ X96))) & ($true != ((X93 @ (ap @ X95 @ X96))))) | ? [X98 : term] : (($true = ((X93 @ X98))) & ($true != ((X93 @ (lam @ X98))))) | ? [X97 : term] : (($true != ((X93 @ X97))) & (((var @ X97)) = $true))) | (induction != $true)) & ((induction = $true) | ? [X93 : (term > $o),X94 : term] : ((((X93 @ X94)) != $true) & ! [X95 : term,X96 : term] : (($true != ((X93 @ X95))) | ($true != ((X93 @ X96))) | ($true = ((X93 @ (ap @ X95 @ X96))))) & ! [X98 : term] : (($true != ((X93 @ X98))) | ($true = ((X93 @ (lam @ X98))))) & ! [X97 : term] : (($true = ((X93 @ X97))) | (((var @ X97)) != $true))))) & (termmset_gthm = $true) & (((substmonoid = $true) | (? [X520 : subst] : (((comp @ X520 @ id)) != X520) | ? [X521 : subst] : (((comp @ id @ X521)) != X521))) & ((! [X520 : subst] : (((comp @ X520 @ id)) = X520) & ! [X521 : subst] : (((comp @ id @ X521)) = X521)) | (substmonoid != $true))) & (hoasinduction_lem1v2 = $true) & (axmap = $true) & ((! [X171 : (subst > term > term),X172 : (subst > term > term),X174 : subst,X173 : term] : (? [X178 : subst,X180 : term,X179 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) != ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) | ? [X177 : subst,X176 : term,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) != ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))) | (((lam @ (X171 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((X172 @ X174 @ X173)) = ((X171 @ X174 @ X173)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X171 : (subst > term > term),X172 : (subst > term > term),X174 : subst,X173 : term] : (! [X178 : subst,X180 : term,X179 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) = ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) & ! [X177 : subst,X176 : term,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) = ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))) & (((lam @ (X171 @ sh @ one))) = ((lam @ (X172 @ sh @ one)))) & (((X172 @ X174 @ X173)) != ((X171 @ X174 @ X173)))))) & (((? [X32 : term] : (((sub @ X32 @ id)) != X32) | ! [X33 : term] : (((sub @ X33 @ id)) = X33)) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X32 : term] : (((sub @ X32 @ id)) = X32) & ? [X33 : term] : (((sub @ X33 @ id)) != X33)))) & (hoasapnotvar_gthm = $true) & (((hoasinduction_lem3v2_f = $true) | ? [X182 : term] : ! [X183 : (subst > term > term)] : ? [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) != ((X183 @ X184 @ X185)))) & (! [X182 : term] : ? [X183 : (subst > term > term)] : ! [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) = ((X183 @ X184 @ X185))) | (hoasinduction_lem3v2_f != $true))) & (apnotvar = $true) & (((axscons = $true) | ? [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) != X170)) & (! [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) = X170) | (axscons != $true))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axabs = $true) & (((hoasinduction_lem2 = $true) | ? [X331 : term,X330 : term,X332 : (subst > term > subst > $o)] : (! [X342 : term,X341 : term] : ((((X332 @ id @ X341 @ id)) != $true) | (((X332 @ id @ X342 @ id)) != $true) | (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) = $true)) & ($true != ((X332 @ id @ (ap @ X331 @ X330) @ id))) & ! [X339 : term,X337 : subst,X338 : subst,X340 : subst] : (($true = ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) | (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) != $true)) & ! [X333 : subst,X334 : term,X335 : subst,X336 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) != $true) | ($true = ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) & ($true = ((X332 @ id @ X331 @ id))) & (((X332 @ id @ X330 @ id)) = $true))) & (! [X331 : term,X330 : term,X332 : (subst > term > subst > $o)] : (? [X342 : term,X341 : term] : ((((X332 @ id @ X341 @ id)) = $true) & (((X332 @ id @ X342 @ id)) = $true) & (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) != $true)) | ($true = ((X332 @ id @ (ap @ X331 @ X330) @ id))) | ? [X339 : term,X337 : subst,X338 : subst,X340 : subst] : (($true != ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) & (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) = $true)) | ? [X333 : subst,X334 : term,X335 : subst,X336 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) = $true) & ($true != ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) | ($true != ((X332 @ id @ X331 @ id))) | (((X332 @ id @ X330 @ id)) != $true)) | (hoasinduction_lem2 != $true))) & (hoaslamnotap_gthm = $true) & (((hoasinduction_lem3aaa = $true) | ? [X130 : term,X129 : (subst > term > subst > $o)] : ((((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) != $true) & ! [X131 : term] : (($true != ((X129 @ id @ X131 @ id))) | (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) = $true)) & ! [X133 : (subst > term > term),X132 : term] : (? [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) != ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) | ? [X140 : term] : (($true != ((X129 @ id @ (X133 @ id @ X140) @ id))) & (((X129 @ id @ X140 @ id)) = $true)) | (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) = $true) | ? [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) != ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139)))))) & (! [X130 : term,X129 : (subst > term > subst > $o)] : ((((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true) | ? [X131 : term] : (($true = ((X129 @ id @ X131 @ id))) & (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) != $true)) | ? [X133 : (subst > term > term),X132 : term] : (! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) & ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | (((X129 @ id @ X140 @ id)) != $true)) & (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) != $true) & ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139))))) | (hoasinduction_lem3aaa != $true))) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (axclos = $true) & ((! [X157 : term,X156 : term] : ((X156 = X157) | (((sub @ X157 @ sh)) != ((sub @ X156 @ sh)))) | (shinj != $true)) & ((shinj = $true) | ? [X157 : term,X156 : term] : ((X156 != X157) & (((sub @ X157 @ sh)) = ((sub @ X156 @ sh)))))) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (hoasinduction_lem1_lthm = $true) & (((? [X39 : term] : (((sub @ X39 @ id)) != X39) | ($true = sP5) | ? [X40 : (subst > term > subst > $o),X41 : term] : (! [X43 : (subst > term > term)] : (? [X47 : subst,X46 : subst,X45 : term] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) != ((sub @ (X43 @ X47 @ X45) @ X46))) | ? [X44 : term] : (($true = ((X40 @ id @ X44 @ id))) & ($true != ((X40 @ id @ (X43 @ id @ X44) @ id)))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) & ! [X42 : term] : (($true != ((X40 @ id @ X42 @ id))) | (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true)) & ($true != ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id))))) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X39 : term] : (((sub @ X39 @ id)) = X39) & ($true != sP5) & ! [X40 : (subst > term > subst > $o),X41 : term] : (? [X43 : (subst > term > term)] : (! [X47 : subst,X46 : subst,X45 : term] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) = ((sub @ (X43 @ X47 @ X45) @ X46))) & ! [X44 : term] : (($true != ((X40 @ id @ X44 @ id))) | ($true = ((X40 @ id @ (X43 @ id @ X44) @ id)))) & ($true != ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) | ? [X42 : term] : (($true = ((X40 @ id @ X42 @ id))) & (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) != $true)) | ($true = ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id))))))) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ! [X169 : d_term] : (d_one = X169) & (((hoasinduction_lem3a_lthm = $true) | (? [X110 : term,X111 : (subst > term > subst > $o)] : (! [X112 : term] : (($true = ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) | ($true != ((X111 @ id @ X112 @ id)))) & ($true != ((X111 @ id @ (lam @ X110) @ id))) & ! [X113 : (subst > term > term)] : (($true = ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) | ? [X114 : term] : (($true != ((X111 @ id @ (X113 @ id @ X114) @ id))) & (((X111 @ id @ X114 @ id)) = $true)) | ? [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) != ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))))) & ! [X101 : term] : (((sub @ X101 @ id)) = X101) & ! [X102 : (subst > term > subst > $o),X103 : term] : (? [X105 : (subst > term > term)] : (($true != ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) & ! [X106 : term] : ((((X102 @ id @ X106 @ id)) != $true) | (((X102 @ id @ (X105 @ id @ X106) @ id)) = $true)) & ! [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) = ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) | ($true = ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) | ? [X104 : term] : ((((X102 @ id @ X104 @ id)) = $true) & ($true != ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id))))))) & ((! [X110 : term,X111 : (subst > term > subst > $o)] : (? [X112 : term] : (($true != ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) & ($true = ((X111 @ id @ X112 @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ? [X113 : (subst > term > term)] : (($true != ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) & ! [X114 : term] : (($true = ((X111 @ id @ (X113 @ id @ X114) @ id))) | (((X111 @ id @ X114 @ id)) != $true)) & ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))))) | ? [X101 : term] : (((sub @ X101 @ id)) != X101) | ? [X102 : (subst > term > subst > $o),X103 : term] : (! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ? [X106 : term] : ((((X102 @ id @ X106 @ id)) = $true) & (((X102 @ id @ (X105 @ id @ X106) @ id)) != $true)) | ? [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) != ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) & ($true != ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) & ! [X104 : term] : ((((X102 @ id @ X104 @ id)) != $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id)))))) | (hoasinduction_lem3a_lthm != $true))) & ((! [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) = X260) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) != X260))) & (hoaslamnotvar = $true) & (hoasinduction_lem3_gthm = $true) & (((hoasapinj2_lthm = $true) | (! [X66 : term,X65 : term,X67 : term,X64 : term] : ((X64 = X66) | (((ap @ X67 @ X66)) != ((ap @ X65 @ X64)))) & ? [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 != X70) & (((ap @ (sub @ X71 @ id) @ X69)) = ((ap @ (sub @ X68 @ id) @ X70)))))) & ((? [X66 : term,X65 : term,X67 : term,X64 : term] : ((X64 != X66) & (((ap @ X67 @ X66)) = ((ap @ X65 @ X64)))) | ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70))))) | (hoasapinj2_lthm != $true))) & (((hoasinduction_lthm_3 = $true) | (! [X435 : (term > $o),X437 : term,X436 : (subst > term > subst > $o)] : (($true = ((X435 @ (lam @ X437)))) | ? [X444 : term] : (($true != ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) & (((X435 @ X444)) = $true)) | ? [X439 : (subst > term > term)] : (! [X440 : term] : ((((X436 @ id @ X440 @ id)) != $true) | ($true = ((X436 @ id @ (X439 @ id @ X440) @ id)))) & (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) != $true) & ! [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) = ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) | ? [X438 : term] : (((X435 @ X438)) != ((X436 @ id @ X438 @ id)))) & ! [X427 : term,X428 : (term > $o)] : (? [X433 : term,X432 : term] : (($true = ((X428 @ X432))) & ($true != ((X428 @ (ap @ X432 @ X433)))) & ($true = ((X428 @ X433)))) | ? [X429 : term] : ((((X428 @ X429)) != $true) & ($true = ((var @ X429)))) | ? [X430 : term] : (($true != ((X428 @ (lam @ X430)))) & ! [X431 : term] : ((((X428 @ (sub @ X430 @ (push @ X431 @ id)))) = $true) | ($true != ((X428 @ X431))))) | ($true = ((X428 @ X427)))) & ($true != sP4) & ! [X424 : (subst > term > subst > $o)] : ? [X425 : (term > $o)] : ! [X426 : term] : (((X424 @ id @ X426 @ id)) = ((X425 @ X426))) & ! [X434 : term] : (((sub @ X434 @ id)) = X434))) & ((? [X435 : (term > $o),X437 : term,X436 : (subst > term > subst > $o)] : (($true != ((X435 @ (lam @ X437)))) & ! [X444 : term] : (($true = ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) | (((X435 @ X444)) != $true)) & ! [X439 : (subst > term > term)] : (? [X440 : term] : ((((X436 @ id @ X440 @ id)) = $true) & ($true != ((X436 @ id @ (X439 @ id @ X440) @ id)))) | (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) = $true) | ? [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) != ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) & ! [X438 : term] : (((X435 @ X438)) = ((X436 @ id @ X438 @ id)))) | ? [X427 : term,X428 : (term > $o)] : (! [X433 : term,X432 : term] : (($true != ((X428 @ X432))) | ($true = ((X428 @ (ap @ X432 @ X433)))) | ($true != ((X428 @ X433)))) & ! [X429 : term] : ((((X428 @ X429)) = $true) | ($true != ((var @ X429)))) & ! [X430 : term] : (($true = ((X428 @ (lam @ X430)))) | ? [X431 : term] : ((((X428 @ (sub @ X430 @ (push @ X431 @ id)))) != $true) & ($true = ((X428 @ X431))))) & ($true != ((X428 @ X427)))) | ($true = sP4) | ? [X424 : (subst > term > subst > $o)] : ! [X425 : (term > $o)] : ? [X426 : term] : (((X424 @ id @ X426 @ id)) != ((X425 @ X426))) | ? [X434 : term] : (((sub @ X434 @ id)) != X434)) | (hoasinduction_lthm_3 != $true))) & (substmonoid_gthm = $true) & ((! [X343 : term] : ? [X344 : (subst > term > term)] : ! [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) = ((X344 @ X346 @ X345))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X343 : term] : ! [X344 : (subst > term > term)] : ? [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) != ((X344 @ X346 @ X345))))) & (axassoc = $true) & ((! [X367 : subst,X365 : (term > $o),X366 : term] : ? [X368 : (term > $o)] : ! [X369 : term] : (((X368 @ X369)) = ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X367 : subst,X365 : (term > $o),X366 : term] : ! [X368 : (term > $o)] : ? [X369 : term] : (((X368 @ X369)) != ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))))) & ((! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) = ((ap @ (sub @ X122 @ id) @ X121))) & (X122 != X123)))) & (hoasapnotvar = $true) & (((hoasinduction_lthm = $true) | (! [X379 : term,X378 : (subst > term > subst > $o),X377 : term] : (? [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true = ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) & ($true != ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) | ($true != ((X378 @ id @ X379 @ id))) | ? [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) = $true) & (((X378 @ id @ X381 @ id)) = $true) & (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) != $true)) | ? [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) = $true) & ($true != ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) | ($true = ((X378 @ id @ (ap @ X377 @ X379) @ id))) | ($true != ((X378 @ id @ X377 @ id)))) & ! [X371 : (term > $o),X370 : term] : (? [X372 : term] : (($true != ((X371 @ (lam @ X372)))) & ! [X373 : term] : ((((X371 @ X373)) != $true) | (((X371 @ (sub @ X372 @ (push @ X373 @ id)))) = $true))) | ? [X374 : term] : ((((var @ X374)) = $true) & ($true != ((X371 @ X374)))) | ? [X375 : term,X376 : term] : (($true != ((X371 @ (ap @ X376 @ X375)))) & (((X371 @ X375)) = $true) & ($true = ((X371 @ X376)))) | (((X371 @ X370)) = $true)) & (sP2 != $true) & ($true != sP1))) & ((? [X379 : term,X378 : (subst > term > subst > $o),X377 : term] : (! [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true != ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) | ($true = ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) & ($true = ((X378 @ id @ X379 @ id))) & ! [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) != $true) | (((X378 @ id @ X381 @ id)) != $true) | (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) = $true)) & ! [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) != $true) | ($true = ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) & ($true != ((X378 @ id @ (ap @ X377 @ X379) @ id))) & ($true = ((X378 @ id @ X377 @ id)))) | ? [X371 : (term > $o),X370 : term] : (! [X372 : term] : (($true = ((X371 @ (lam @ X372)))) | ? [X373 : term] : ((((X371 @ X373)) = $true) & (((X371 @ (sub @ X372 @ (push @ X373 @ id)))) != $true))) & ! [X374 : term] : ((((var @ X374)) != $true) | ($true = ((X371 @ X374)))) & ! [X375 : term,X376 : term] : (($true = ((X371 @ (ap @ X376 @ X375)))) | (((X371 @ X375)) != $true) | ($true != ((X371 @ X376)))) & (((X371 @ X370)) != $true)) | (sP2 = $true) | ($true = sP1)) | (hoasinduction_lthm != $true))) & ((! [X217 : term] : (((sub @ X217 @ id)) = X217) | (termmset != $true)) & ((termmset = $true) | ? [X217 : term] : (((sub @ X217 @ id)) != X217))) & (ulamvarsh = $true) & (id = ((d2subst @ d_id))) & ((! [X165 : term] : ? [X166 : (subst > term > term)] : (((X166 @ sh @ one)) = ((sub @ X165 @ (push @ one @ sh)))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X165 : term] : ! [X166 : (subst > term > term)] : (((X166 @ sh @ one)) != ((sub @ X165 @ (push @ one @ sh)))))) & ((! [X159 : (term > $o),X158 : term] : (($true = ((X159 @ X158))) | ? [X163 : term] : (! [X164 : term] : (($true = ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) | ($true != ((X159 @ X164)))) & (((X159 @ (lam @ X163))) != $true)) | ? [X160 : term,X161 : term] : (($true != ((X159 @ (ap @ X160 @ X161)))) & (((X159 @ X161)) = $true) & (((X159 @ X160)) = $true)) | ? [X162 : term] : (($true != ((X159 @ X162))) & (((var @ X162)) = $true))) | (induction2 != $true)) & ((induction2 = $true) | ? [X159 : (term > $o),X158 : term] : (($true != ((X159 @ X158))) & ! [X163 : term] : (? [X164 : term] : (($true != ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) & ($true = ((X159 @ X164)))) | (((X159 @ (lam @ X163))) = $true)) & ! [X160 : term,X161 : term] : (($true = ((X159 @ (ap @ X160 @ X161)))) | (((X159 @ X161)) != $true) | (((X159 @ X160)) != $true)) & ! [X162 : term] : (($true = ((X159 @ X162))) | (((var @ X162)) != $true))))) & (pushprop_lthm_orig = $true) & (lamnotvar = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem1_gthm = $true)),
  inference(nnf_transformation,[],[f24])).
thf(f58,plain,(
  ((hoasinduction_lem3v2_lthm = $true) | (? [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (! [X488 : term] : (($true != ((X482 @ X488))) | (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) = $true)) & ! [X489 : term] : (((X481 @ id @ X489 @ id)) = ((X482 @ X489))) & ! [X483 : (subst > term > term)] : ((((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) = $true) | ? [X487 : term] : ((((X481 @ id @ X487 @ id)) = $true) & (((X481 @ id @ (X483 @ id @ X487) @ id)) != $true)) | ? [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) != ((sub @ (X483 @ X485 @ X486) @ X484)))) & ! [X491 : subst,X490 : subst,X493 : term,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) = $true) | (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) != $true)) & ($true != ((X482 @ (lam @ X480)))) & ! [X496 : subst,X495 : subst,X497 : subst,X494 : term] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) != $true) | ($true = ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))) & ! [X479 : term] : (((sub @ X479 @ id)) = X479))) & (! [X480 : term,X481 : (subst > term > subst > $o),X482 : (term > $o)] : (? [X488 : term] : (($true = ((X482 @ X488))) & (((X482 @ (sub @ X480 @ (push @ X488 @ id)))) != $true)) | ? [X489 : term] : (((X481 @ id @ X489 @ id)) != ((X482 @ X489))) | ? [X483 : (subst > term > term)] : ((((X481 @ id @ (lam @ (X483 @ sh @ one)) @ id)) != $true) & ! [X487 : term] : ((((X481 @ id @ X487 @ id)) != $true) | (((X481 @ id @ (X483 @ id @ X487) @ id)) = $true)) & ! [X486 : term,X485 : subst,X484 : subst] : (((X483 @ (comp @ X485 @ X484) @ (sub @ X486 @ X484))) = ((sub @ (X483 @ X485 @ X486) @ X484)))) | ? [X491 : subst,X490 : subst,X493 : term,X492 : subst] : ((((X481 @ (comp @ X492 @ X491) @ (sub @ X493 @ X491) @ X490)) != $true) & (((X481 @ X492 @ X493 @ (comp @ X491 @ X490))) = $true)) | ($true = ((X482 @ (lam @ X480)))) | ? [X496 : subst,X495 : subst,X497 : subst,X494 : term] : ((((X481 @ (comp @ X495 @ X497) @ (sub @ X494 @ X497) @ X496)) = $true) & ($true != ((X481 @ X495 @ X494 @ (comp @ X497 @ X496)))))) | ? [X479 : term] : (((sub @ X479 @ id)) != X479) | (hoasinduction_lem3v2_lthm != $true)) & (! [X515 : (subst > term > term),X514 : term,X516 : term] : (? [X517 : term,X519 : subst,X518 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) != ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))) | (((ap @ (sub @ X516 @ id) @ X514)) != ((lam @ (X515 @ sh @ one))))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X515 : (subst > term > term),X514 : term,X516 : term] : (! [X517 : term,X519 : subst,X518 : subst] : (((sub @ (X515 @ X519 @ X517) @ X518)) = ((X515 @ (comp @ X519 @ X518) @ (sub @ X517 @ X518)))) & (((ap @ (sub @ X516 @ id) @ X514)) = ((lam @ (X515 @ sh @ one)))))) & ((hoasinduction_lem3v2 = $true) | ? [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : ((((X349 @ (lam @ X347))) != $true) & ! [X350 : subst,X353 : term,X352 : subst,X351 : subst] : (($true != ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) | ($true = ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) & ! [X364 : term] : (((X349 @ X364)) = ((X348 @ id @ X364 @ id))) & ! [X362 : subst,X361 : term,X360 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) != $true) | ($true = ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) & ! [X363 : term] : (($true != ((X349 @ X363))) | ($true = ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) & ! [X354 : (subst > term > term)] : (? [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) != $true) & (((X348 @ id @ X355 @ id)) = $true)) | ($true = ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) | ? [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) != ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358))))))) & (! [X347 : term,X348 : (subst > term > subst > $o),X349 : (term > $o)] : ((((X349 @ (lam @ X347))) = $true) | ? [X350 : subst,X353 : term,X352 : subst,X351 : subst] : (($true = ((X348 @ (comp @ X350 @ X352) @ (sub @ X353 @ X352) @ X351))) & ($true != ((X348 @ X350 @ X353 @ (comp @ X352 @ X351))))) | ? [X364 : term] : (((X349 @ X364)) != ((X348 @ id @ X364 @ id))) | ? [X362 : subst,X361 : term,X360 : subst,X359 : subst] : ((((X348 @ X362 @ X361 @ (comp @ X359 @ X360))) = $true) & ($true != ((X348 @ (comp @ X362 @ X359) @ (sub @ X361 @ X359) @ X360)))) | ? [X363 : term] : (($true = ((X349 @ X363))) & ($true != ((X349 @ (sub @ X347 @ (push @ X363 @ id)))))) | ? [X354 : (subst > term > term)] : (! [X355 : term] : ((((X348 @ id @ (X354 @ id @ X355) @ id)) = $true) | (((X348 @ id @ X355 @ id)) != $true)) & ($true != ((X348 @ id @ (lam @ (X354 @ sh @ one)) @ id))) & ! [X358 : subst,X357 : subst,X356 : term] : (((sub @ (X354 @ X357 @ X356) @ X358)) = ((X354 @ (comp @ X357 @ X358) @ (sub @ X356 @ X358)))))) | (hoasinduction_lem3v2 != $true)) & (! [X532 : term,X531 : (subst > term > subst > $o)] : (? [X533 : (subst > term > term)] : (! [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) = $true) | ($true != ((X531 @ id @ X534 @ id)))) & ($true != ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) & ! [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) = ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) | ($true = ((X531 @ id @ X532 @ id))) | ? [X538 : term,X539 : term] : (($true = ((X531 @ id @ X539 @ id))) & ($true = ((X531 @ id @ X538 @ id))) & ($true != ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id))))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X532 : term,X531 : (subst > term > subst > $o)] : (! [X533 : (subst > term > term)] : (? [X534 : term] : ((((X531 @ id @ (X533 @ id @ X534) @ id)) != $true) & ($true = ((X531 @ id @ X534 @ id)))) | ($true = ((X531 @ id @ (lam @ (X533 @ sh @ one)) @ id))) | ? [X535 : term,X537 : subst,X536 : subst] : (((sub @ (X533 @ X536 @ X535) @ X537)) != ((X533 @ (comp @ X536 @ X537) @ (sub @ X535 @ X537))))) & ($true != ((X531 @ id @ X532 @ id))) & ! [X538 : term,X539 : term] : (($true != ((X531 @ id @ X539 @ id))) | ($true != ((X531 @ id @ X538 @ id))) | ($true = ((X531 @ id @ (ap @ (sub @ X538 @ id) @ X539) @ id)))))) & (hoasapinj1_gthm = $true) & (hoaslamnotap_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & ! [X92 : d_subst,X91 : d_subst] : ((((d2subst @ X92)) != ((d2subst @ X91))) | (X91 = X92)) & ((hoasinduction_lem3v2a_lthm = $true) | (? [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (($true != ((X267 @ (lam @ X269)))) & ! [X271 : term] : (($true != ((X267 @ X271))) | ($true = ((X267 @ (sub @ X269 @ (push @ X271 @ id)))))) & ! [X270 : term] : (((X268 @ id @ X270 @ id)) = ((X267 @ X270))) & ! [X272 : (subst > term > term)] : (? [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) != ((sub @ (X272 @ X273 @ X275) @ X274))) | ($true = ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))) | ? [X276 : term] : ((((X268 @ id @ X276 @ id)) = $true) & ($true != ((X268 @ id @ (X272 @ id @ X276) @ id)))))) & ! [X266 : term] : (((sub @ X266 @ id)) = X266) & ! [X262 : term] : ? [X263 : (subst > term > term)] : ! [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) = ((X263 @ X264 @ X265))))) & (! [X267 : (term > $o),X268 : (subst > term > subst > $o),X269 : term] : (($true = ((X267 @ (lam @ X269)))) | ? [X271 : term] : (($true = ((X267 @ X271))) & ($true != ((X267 @ (sub @ X269 @ (push @ X271 @ id)))))) | ? [X270 : term] : (((X268 @ id @ X270 @ id)) != ((X267 @ X270))) | ? [X272 : (subst > term > term)] : (! [X273 : subst,X275 : term,X274 : subst] : (((X272 @ (comp @ X273 @ X274) @ (sub @ X275 @ X274))) = ((sub @ (X272 @ X273 @ X275) @ X274))) & ($true != ((X268 @ id @ (lam @ (X272 @ sh @ one)) @ id))) & ! [X276 : term] : ((((X268 @ id @ X276 @ id)) != $true) | ($true = ((X268 @ id @ (X272 @ id @ X276) @ id)))))) | ? [X266 : term] : (((sub @ X266 @ id)) != X266) | ? [X262 : term] : ! [X263 : (subst > term > term)] : ? [X264 : subst,X265 : term] : (((sub @ X262 @ (push @ X265 @ X264))) != ((X263 @ X264 @ X265))) | (hoasinduction_lem3v2a_lthm != $true)) & (hoaslamnotvar_lthm = $true) & ((pushprop_lem0 = $true) | ? [X36 : term,X35 : (term > $o),X34 : subst] : ! [X37 : (term > $o)] : ? [X38 : term] : (((X37 @ X38)) != ((X35 @ (sub @ X38 @ (push @ X36 @ X34)))))) & (! [X36 : term,X35 : (term > $o),X34 : subst] : ? [X37 : (term > $o)] : ! [X38 : term] : (((X37 @ X38)) = ((X35 @ (sub @ X38 @ (push @ X36 @ X34))))) | (pushprop_lem0 != $true)) & (hoasinduction_lem2_lthm = $true) & (! [X181 : subst] : (((comp @ X181 @ id)) = X181) | (axidr != $true)) & ((axidr = $true) | ? [X181 : subst] : (((comp @ X181 @ id)) != X181)) & (induction2_gthm = $true) & ! [X118 : d_subst] : (d_id = X118) & (! [X223 : subst,X226 : (term > $o),X225 : (term > $o),X224 : term] : (? [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) != ((X226 @ X227))) | ($true != ((X225 @ X224))) | ($true = ((X226 @ one)))) | ? [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) != X221) | (pushprop_lem1v2_lthm != $true)) & ((pushprop_lem1v2_lthm = $true) | (? [X223 : subst,X226 : (term > $o),X225 : (term > $o),X224 : term] : (! [X227 : term] : (((X225 @ (sub @ X227 @ (push @ X224 @ X223)))) = ((X226 @ X227))) & ($true = ((X225 @ X224))) & ($true != ((X226 @ one)))) & ! [X221 : term,X222 : subst] : (((sub @ one @ (push @ X221 @ X222))) = X221))) & (pushprop_lthm = $true) & ! [X167 : subst] : ? [X168 : d_subst] : (((d2subst @ X168)) = X167) & (? [X467 : term,X468 : term] : ((X467 != X468) & (((lam @ X467)) = ((lam @ X468)))) | ? [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) != X465) | ? [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) != X463) | ! [X471 : subst,X470 : (subst > term > term),X469 : term,X472 : (subst > term > term)] : (? [X473 : subst,X475 : term,X474 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) != ((sub @ (X472 @ X473 @ X475) @ X474))) | (((X470 @ X471 @ X469)) = ((X472 @ X471 @ X469))) | (((lam @ (X470 @ sh @ one))) != ((lam @ (X472 @ sh @ one)))) | ? [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) != ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476))))) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (! [X467 : term,X468 : term] : ((X467 = X468) | (((lam @ X467)) != ((lam @ X468)))) & ! [X466 : term,X465 : subst] : (((comp @ sh @ (push @ X466 @ X465))) = X465) & ! [X463 : term,X464 : subst] : (((sub @ one @ (push @ X463 @ X464))) = X463) & ? [X471 : subst,X470 : (subst > term > term),X469 : term,X472 : (subst > term > term)] : (! [X473 : subst,X475 : term,X474 : subst] : (((X472 @ (comp @ X473 @ X474) @ (sub @ X475 @ X474))) = ((sub @ (X472 @ X473 @ X475) @ X474))) & (((X470 @ X471 @ X469)) != ((X472 @ X471 @ X469))) & (((lam @ (X470 @ sh @ one))) = ((lam @ (X472 @ sh @ one)))) & ! [X477 : term,X476 : subst,X478 : subst] : (((sub @ (X470 @ X478 @ X477) @ X476)) = ((X470 @ (comp @ X478 @ X476) @ (sub @ X477 @ X476))))))) & (hoasinduction_lem1v2_gthm = $true) & (! [X80 : (subst > term > subst > $o)] : ? [X81 : (term > $o)] : ! [X82 : term] : (((X80 @ id @ X82 @ id)) = ((X81 @ X82))) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X80 : (subst > term > subst > $o)] : ! [X81 : (term > $o)] : ? [X82 : term] : (((X80 @ id @ X82 @ id)) != ((X81 @ X82)))) & ! [X119 : term] : ? [X120 : d_term] : (((d2term @ X120)) = X119) & (((d2subst @ d_id)) = sh) & (pushprop_lem3v2_lthm = $true) & ((pushprop_lem1_lthm = $true) | (! [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) = X147) & ! [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) = X150) & ? [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) != $true) & (((X153 @ X152)) = $true)))) & (? [X148 : subst,X147 : term] : (((sub @ one @ (push @ X147 @ X148))) != X147) | ? [X150 : subst,X149 : term] : (((comp @ sh @ (push @ X149 @ X150))) != X150) | ! [X155 : (term > $o),X154 : term,X151 : subst,X152 : term,X153 : (term > $o)] : ((((X155 @ (sub @ X152 @ (push @ X154 @ X151)))) = $true) | (((X153 @ X152)) != $true)) | (pushprop_lem1_lthm != $true)) & (pushprop_lem1v2_gthm = $true) & (! [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) = X99) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X99 : subst,X100 : term] : (((comp @ sh @ (push @ X100 @ X99))) != X99)) & ((apinj1 = $true) | ? [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 != X127) & (((ap @ X127 @ X128)) = ((ap @ X126 @ X125))))) & (! [X128 : term,X125 : term,X127 : term,X126 : term] : ((X126 = X127) | (((ap @ X127 @ X128)) != ((ap @ X126 @ X125)))) | (apinj1 != $true)) & ((laminj = $true) | ? [X219 : term,X218 : term] : ((X218 != X219) & (((lam @ X219)) = ((lam @ X218))))) & (! [X219 : term,X218 : term] : ((X218 = X219) | (((lam @ X219)) != ((lam @ X218)))) | (laminj != $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 = X146) | (((ap @ X144 @ X146)) != ((ap @ X143 @ X145)))) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X145 : term,X144 : term,X146 : term,X143 : term] : ((X145 != X146) & (((ap @ X144 @ X146)) = ((ap @ X143 @ X145))))) & (lamnotap != $true) & ((induction2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (induction2_lthm != $true)) & (! [X307 : term,X310 : (term > $o),X309 : (subst > term > subst > $o),X308 : term] : (? [X311 : term] : (((X309 @ id @ X311 @ id)) != ((X310 @ X311))) | ? [X313 : term,X312 : term] : (($true = ((X309 @ id @ X313 @ id))) & (((X309 @ id @ X312 @ id)) = $true) & (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) != $true)) | ? [X319 : subst,X320 : subst,X321 : term,X318 : subst] : (($true = ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) & ($true != ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) | (((X310 @ X308)) != $true) | ($true = ((X310 @ (ap @ X307 @ X308)))) | ? [X314 : subst,X317 : subst,X316 : term,X315 : subst] : (($true != ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314))) & ($true = ((X309 @ X315 @ X316 @ (comp @ X317 @ X314))))) | (((X310 @ X307)) != $true)) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ? [X307 : term,X310 : (term > $o),X309 : (subst > term > subst > $o),X308 : term] : (! [X311 : term] : (((X309 @ id @ X311 @ id)) = ((X310 @ X311))) & ! [X313 : term,X312 : term] : (($true != ((X309 @ id @ X313 @ id))) | (((X309 @ id @ X312 @ id)) != $true) | (((X309 @ id @ (ap @ (sub @ X312 @ id) @ X313) @ id)) = $true)) & ! [X319 : subst,X320 : subst,X321 : term,X318 : subst] : (($true != ((X309 @ (comp @ X319 @ X320) @ (sub @ X321 @ X320) @ X318))) | ($true = ((X309 @ X319 @ X321 @ (comp @ X320 @ X318))))) & (((X310 @ X308)) = $true) & ($true != ((X310 @ (ap @ X307 @ X308)))) & ! [X314 : subst,X317 : subst,X316 : term,X315 : subst] : (($true = ((X309 @ (comp @ X315 @ X317) @ (sub @ X316 @ X317) @ X314))) | ($true != ((X309 @ X315 @ X316 @ (comp @ X317 @ X314))))) & (((X310 @ X307)) = $true))) & ((! [X329 : subst] : (((comp @ X329 @ id)) = X329) & ! [X328 : subst] : (((comp @ id @ X328)) = X328)) | ? [X327 : subst] : (((comp @ X327 @ id)) != X327) | ? [X326 : subst] : (((comp @ id @ X326)) != X326) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ((? [X329 : subst] : (((comp @ X329 @ id)) != X329) | ? [X328 : subst] : (((comp @ id @ X328)) != X328)) & ! [X327 : subst] : (((comp @ X327 @ id)) = X327) & ! [X326 : subst] : (((comp @ id @ X326)) = X326))) & (pushprop_lem3v2 = $true) & ((hoasinduction_lem3aa_lthm = $true) | ? [X187 : term,X186 : (subst > term > subst > $o)] : (! [X188 : (subst > term > term)] : (? [X192 : term] : (($true != ((X186 @ id @ (X188 @ id @ X192) @ id))) & ($true = ((X186 @ id @ X192 @ id)))) | ? [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) != ((sub @ (X188 @ X191 @ X189) @ X190))) | ($true = ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id)))) & (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) != $true) & ! [X193 : term] : (($true != ((X186 @ id @ X193 @ id))) | (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) = $true)))) & (! [X187 : term,X186 : (subst > term > subst > $o)] : (? [X188 : (subst > term > term)] : (! [X192 : term] : (($true = ((X186 @ id @ (X188 @ id @ X192) @ id))) | ($true != ((X186 @ id @ X192 @ id)))) & ! [X190 : subst,X189 : term,X191 : subst] : (((X188 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X188 @ X191 @ X189) @ X190))) & ($true != ((X186 @ id @ (lam @ (X188 @ sh @ one)) @ id)))) | (((X186 @ id @ (lam @ (sub @ X187 @ (push @ one @ sh))) @ id)) = $true) | ? [X193 : term] : (($true = ((X186 @ id @ X193 @ id))) & (((X186 @ id @ (sub @ X187 @ (push @ X193 @ id)) @ id)) != $true))) | (hoasinduction_lem3aa_lthm != $true)) & (pushprop_lem0_gthm = $true) & (! [X27 : subst,X28 : (term > $o),X30 : term,X29 : (term > $o)] : (($true != ((X29 @ X30))) | (((X28 @ one)) = $true) | ? [X31 : term] : (((X28 @ X31)) != ((X29 @ (sub @ X31 @ (push @ X30 @ X27)))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X27 : subst,X28 : (term > $o),X30 : term,X29 : (term > $o)] : (($true = ((X29 @ X30))) & (((X28 @ one)) != $true) & ! [X31 : term] : (((X28 @ X31)) = ((X29 @ (sub @ X31 @ (push @ X30 @ X27))))))) & (hoasinduction_lem3b_gthm = $true) & (axapp = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (((var @ (d2term @ d_one))) != $true) & ! [X141 : d_term,X142 : d_term] : ((X141 = X142) | (((d2term @ X141)) != ((d2term @ X142)))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (induction2lem_gthm = $true) & ((induction2lem_lthm = $true) | (sP8 != $true)) & ((sP8 = $true) | (induction2lem_lthm != $true)) & (pushprop_lem2v2 = $true) & (! [X1 : term,X0 : (subst > term > subst > $o)] : (($true = ((X0 @ id @ (lam @ X1) @ id))) | ? [X7 : term] : ((((X0 @ id @ X7 @ id)) = $true) & ($true != ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) | ? [X2 : (subst > term > term)] : (! [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) = ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) & (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X6 : term] : (($true = ((X0 @ id @ (X2 @ id @ X6) @ id))) | (((X0 @ id @ X6 @ id)) != $true)))) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ? [X1 : term,X0 : (subst > term > subst > $o)] : (($true != ((X0 @ id @ (lam @ X1) @ id))) & ! [X7 : term] : ((((X0 @ id @ X7 @ id)) != $true) | ($true = ((X0 @ id @ (sub @ X1 @ (push @ X7 @ id)) @ id)))) & ! [X2 : (subst > term > term)] : (? [X3 : subst,X4 : subst,X5 : term] : (((sub @ (X2 @ X4 @ X5) @ X3)) != ((X2 @ (comp @ X4 @ X3) @ (sub @ X5 @ X3)))) | (((X0 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true) | ? [X6 : term] : (($true != ((X0 @ id @ (X2 @ id @ X6) @ id))) & (((X0 @ id @ X6 @ id)) = $true))))) & (hoaslaminj_gthm = $true) & (? [X524 : term,X525 : term,X526 : term,X523 : term] : ((X525 != X526) & (((ap @ X525 @ X523)) = ((ap @ X526 @ X524)))) | ? [X522 : term] : (((sub @ X522 @ id)) != X522) | ! [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) != ((ap @ (sub @ X527 @ id) @ X528))) | (X527 = X529)) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X524 : term,X525 : term,X526 : term,X523 : term] : ((X525 = X526) | (((ap @ X525 @ X523)) != ((ap @ X526 @ X524)))) & ! [X522 : term] : (((sub @ X522 @ id)) = X522) & ? [X530 : term,X528 : term,X527 : term,X529 : term] : ((((ap @ (sub @ X529 @ id) @ X530)) = ((ap @ (sub @ X527 @ id) @ X528))) & (X527 != X529)))) & (hoasinduction_lem1 = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar_lthm = $true) & (((d2term @ d_one)) = one) & ((hoasinduction_lem3v2a = $true) | ? [X250 : (subst > term > subst > $o),X251 : (term > $o),X249 : term] : (! [X253 : term] : ((((X251 @ X253)) != $true) | ($true = ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) & ($true != ((X251 @ (lam @ X249)))) & ! [X254 : (subst > term > term)] : (($true = ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) | ? [X258 : term] : (($true != ((X250 @ id @ (X254 @ id @ X258) @ id))) & ($true = ((X250 @ id @ X258 @ id)))) | ? [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) != ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255))))) & ! [X252 : term] : (((X250 @ id @ X252 @ id)) = ((X251 @ X252))))) & (! [X250 : (subst > term > subst > $o),X251 : (term > $o),X249 : term] : (? [X253 : term] : ((((X251 @ X253)) = $true) & ($true != ((X251 @ (sub @ X249 @ (push @ X253 @ id)))))) | ($true = ((X251 @ (lam @ X249)))) | ? [X254 : (subst > term > term)] : (($true != ((X250 @ id @ (lam @ (X254 @ sh @ one)) @ id))) & ! [X258 : term] : (($true = ((X250 @ id @ (X254 @ id @ X258) @ id))) | ($true != ((X250 @ id @ X258 @ id)))) & ! [X256 : subst,X257 : term,X255 : subst] : (((sub @ (X254 @ X256 @ X257) @ X255)) = ((X254 @ (comp @ X256 @ X255) @ (sub @ X257 @ X255))))) | ? [X252 : term] : (((X250 @ id @ X252 @ id)) != ((X251 @ X252)))) | (hoasinduction_lem3v2a != $true)) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (($true = sP7) | ? [X281 : term,X280 : (term > $o)] : (! [X285 : term,X284 : term] : (($true != ((X280 @ X284))) | ($true = ((X280 @ (ap @ X285 @ X284)))) | ($true != ((X280 @ X285)))) & ! [X286 : term] : (($true = ((X280 @ X286))) | ($true != ((var @ X286)))) & ($true != ((X280 @ X281))) & ! [X282 : term] : (($true = ((X280 @ (lam @ X282)))) | ? [X283 : term] : (($true != ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) & ($true = ((X280 @ X283)))))) | ? [X290 : term,X289 : (term > $o),X288 : (subst > term > subst > $o)] : (! [X293 : (subst > term > term)] : (? [X296 : subst,X295 : subst,X297 : term] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) != ((sub @ (X293 @ X295 @ X297) @ X296))) | ? [X294 : term] : ((((X288 @ id @ X294 @ id)) = $true) & (((X288 @ id @ (X293 @ id @ X294) @ id)) != $true)) | ($true = ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id)))) & ! [X291 : term] : (((X289 @ X291)) = ((X288 @ id @ X291 @ id))) & ! [X292 : term] : (($true != ((X289 @ X292))) | ($true = ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) & ($true != ((X289 @ (lam @ X290))))) | ? [X277 : (subst > term > subst > $o)] : ! [X278 : (term > $o)] : ? [X279 : term] : (((X277 @ id @ X279 @ id)) != ((X278 @ X279))) | ? [X287 : term] : (((sub @ X287 @ id)) != X287) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP7) & ! [X281 : term,X280 : (term > $o)] : (? [X285 : term,X284 : term] : (($true = ((X280 @ X284))) & ($true != ((X280 @ (ap @ X285 @ X284)))) & ($true = ((X280 @ X285)))) | ? [X286 : term] : (($true != ((X280 @ X286))) & ($true = ((var @ X286)))) | ($true = ((X280 @ X281))) | ? [X282 : term] : (($true != ((X280 @ (lam @ X282)))) & ! [X283 : term] : (($true = ((X280 @ (sub @ X282 @ (push @ X283 @ id))))) | ($true != ((X280 @ X283)))))) & ! [X290 : term,X289 : (term > $o),X288 : (subst > term > subst > $o)] : (? [X293 : (subst > term > term)] : (! [X296 : subst,X295 : subst,X297 : term] : (((X293 @ (comp @ X295 @ X296) @ (sub @ X297 @ X296))) = ((sub @ (X293 @ X295 @ X297) @ X296))) & ! [X294 : term] : ((((X288 @ id @ X294 @ id)) != $true) | (((X288 @ id @ (X293 @ id @ X294) @ id)) = $true)) & ($true != ((X288 @ id @ (lam @ (X293 @ sh @ one)) @ id)))) | ? [X291 : term] : (((X289 @ X291)) != ((X288 @ id @ X291 @ id))) | ? [X292 : term] : (($true = ((X289 @ X292))) & ($true != ((X289 @ (sub @ X290 @ (push @ X292 @ id)))))) | ($true = ((X289 @ (lam @ X290))))) & ! [X277 : (subst > term > subst > $o)] : ? [X278 : (term > $o)] : ! [X279 : term] : (((X277 @ id @ X279 @ id)) = ((X278 @ X279))) & ! [X287 : term] : (((sub @ X287 @ id)) = X287))) & (axvarshift = $true) & (! [X84 : term,X83 : (subst > term > subst > $o)] : (? [X90 : term] : ((((X83 @ id @ X90 @ id)) = $true) & ($true != ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) | ? [X85 : (subst > term > term)] : (! [X86 : term] : ((((X83 @ id @ X86 @ id)) != $true) | ($true = ((X83 @ id @ (X85 @ id @ X86) @ id)))) & ($true != ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) & ! [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) = ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) | ($true = ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ? [X84 : term,X83 : (subst > term > subst > $o)] : (! [X90 : term] : ((((X83 @ id @ X90 @ id)) != $true) | ($true = ((X83 @ id @ (sub @ X84 @ (push @ X90 @ id)) @ id)))) & ! [X85 : (subst > term > term)] : (? [X86 : term] : ((((X83 @ id @ X86 @ id)) = $true) & ($true != ((X83 @ id @ (X85 @ id @ X86) @ id)))) | ($true = ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) | ? [X88 : subst,X89 : subst,X87 : term] : (((sub @ (X85 @ X89 @ X87) @ X88)) != ((X85 @ (comp @ X89 @ X88) @ (sub @ X87 @ X88))))) & ($true != ((X83 @ id @ (lam @ (sub @ X84 @ (push @ one @ sh))) @ id))))) & ((induction2lem = $true) | ? [X72 : subst,X73 : (term > $o),X74 : term] : (! [X76 : term] : (? [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) != $true) & ($true = ((X73 @ X77)))) | ($true = ((X73 @ (lam @ X76))))) & ($true != ((X73 @ (sub @ X74 @ X72)))) & ! [X78 : term,X79 : term] : ((((X73 @ X78)) != $true) | ($true != ((X73 @ X79))) | (((X73 @ (ap @ X78 @ X79))) = $true)) & ! [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) = $true) | (((var @ X75)) != $true)))) & (! [X72 : subst,X73 : (term > $o),X74 : term] : (? [X76 : term] : (! [X77 : term] : ((((X73 @ (sub @ X76 @ (push @ X77 @ id)))) = $true) | ($true != ((X73 @ X77)))) & ($true != ((X73 @ (lam @ X76))))) | ($true = ((X73 @ (sub @ X74 @ X72)))) | ? [X78 : term,X79 : term] : ((((X73 @ X78)) = $true) & ($true = ((X73 @ X79))) & (((X73 @ (ap @ X78 @ X79))) != $true)) | ? [X75 : term] : ((((X73 @ (sub @ X75 @ X72))) != $true) & (((var @ X75)) = $true))) | (induction2lem != $true)) & ((hoasinduction = $true) | ? [X195 : (subst > term > subst > $o),X194 : term] : (! [X197 : (subst > term > term)] : (($true = ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) | ? [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) != ((sub @ (X197 @ X200 @ X201) @ X199))) | ? [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) != $true) & (((X195 @ id @ X198 @ id)) = $true))) & (((sP6 @ X195)) != $true) & ! [X205 : term,X203 : subst,X204 : subst,X202 : subst] : ((((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) = $true) | (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) != $true)) & ! [X209 : term,X210 : subst,X208 : subst,X211 : subst] : (($true = ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) | ($true != ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) & ! [X196 : term] : (($true = ((X195 @ id @ X196 @ id))) | ($true != ((var @ (sub @ X196 @ id))))) & (((X195 @ id @ X194 @ id)) != $true))) & (! [X195 : (subst > term > subst > $o),X194 : term] : (? [X197 : (subst > term > term)] : (($true != ((X195 @ id @ (lam @ (X197 @ sh @ one)) @ id))) & ! [X199 : subst,X200 : subst,X201 : term] : (((X197 @ (comp @ X200 @ X199) @ (sub @ X201 @ X199))) = ((sub @ (X197 @ X200 @ X201) @ X199))) & ! [X198 : term] : ((((X195 @ id @ (X197 @ id @ X198) @ id)) = $true) | (((X195 @ id @ X198 @ id)) != $true))) | (((sP6 @ X195)) = $true) | ? [X205 : term,X203 : subst,X204 : subst,X202 : subst] : ((((X195 @ (comp @ X202 @ X204) @ (sub @ X205 @ X204) @ X203)) != $true) & (((X195 @ X202 @ X205 @ (comp @ X204 @ X203))) = $true)) | ? [X209 : term,X210 : subst,X208 : subst,X211 : subst] : (($true != ((X195 @ X208 @ X209 @ (comp @ X210 @ X211)))) & ($true = ((X195 @ (comp @ X208 @ X210) @ (sub @ X209 @ X210) @ X211)))) | ? [X196 : term] : (($true != ((X195 @ id @ X196 @ id))) & ($true = ((var @ (sub @ X196 @ id))))) | (((X195 @ id @ X194 @ id)) = $true)) | (hoasinduction != $true)) & (pushprop = $true) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (! [X232 : (subst > term > subst > $o),X231 : term] : (? [X246 : term] : ((((X232 @ id @ X246 @ id)) = $true) & (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) != $true)) | ? [X235 : subst,X234 : subst,X233 : term,X236 : subst] : (($true = ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235))) & (((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) != $true)) | ? [X237 : (subst > term > term)] : (! [X238 : term] : ((((X232 @ id @ X238 @ id)) != $true) | (((X232 @ id @ (X237 @ id @ X238) @ id)) = $true)) & ! [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) = ((sub @ (X237 @ X239 @ X241) @ X240))) & (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) != $true)) | ($true = ((X232 @ id @ (lam @ X231) @ id))) | ? [X244 : subst,X242 : subst,X243 : subst,X245 : term] : (($true != ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) & ($true = ((X232 @ X244 @ X245 @ (comp @ X243 @ X242)))))) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ? [X232 : (subst > term > subst > $o),X231 : term] : (! [X246 : term] : ((((X232 @ id @ X246 @ id)) != $true) | (((X232 @ id @ (sub @ X231 @ (push @ X246 @ id)) @ id)) = $true)) & ! [X235 : subst,X234 : subst,X233 : term,X236 : subst] : (($true != ((X232 @ (comp @ X234 @ X236) @ (sub @ X233 @ X236) @ X235))) | (((X232 @ X234 @ X233 @ (comp @ X236 @ X235))) = $true)) & ! [X237 : (subst > term > term)] : (? [X238 : term] : ((((X232 @ id @ X238 @ id)) = $true) & (((X232 @ id @ (X237 @ id @ X238) @ id)) != $true)) | ? [X239 : subst,X240 : subst,X241 : term] : (((X237 @ (comp @ X239 @ X240) @ (sub @ X241 @ X240))) != ((sub @ (X237 @ X239 @ X241) @ X240))) | (((X232 @ id @ (lam @ (X237 @ sh @ one)) @ id)) = $true)) & ($true != ((X232 @ id @ (lam @ X231) @ id))) & ! [X244 : subst,X242 : subst,X243 : subst,X245 : term] : (($true = ((X232 @ (comp @ X244 @ X243) @ (sub @ X245 @ X243) @ X242))) | ($true != ((X232 @ X244 @ X245 @ (comp @ X243 @ X242))))))) & (hoaslamnotvar_gthm = $true) & (! [X259 : term] : (((sub @ X259 @ id)) = X259) | (axvarid != $true)) & ((axvarid = $true) | ? [X259 : term] : (((sub @ X259 @ id)) != X259)) & (! [X220 : subst] : (((comp @ id @ X220)) = X220) | (axidl != $true)) & ((axidl = $true) | ? [X220 : subst] : (((comp @ id @ X220)) != X220)) & (pushprop_gthm = $true) & ((hoasinduction_lem0 = $true) | ? [X228 : (subst > term > subst > $o)] : ! [X229 : (term > $o)] : ? [X230 : term] : (((X229 @ X230)) != ((X228 @ id @ X230 @ id)))) & (! [X228 : (subst > term > subst > $o)] : ? [X229 : (term > $o)] : ! [X230 : term] : (((X229 @ X230)) = ((X228 @ id @ X230 @ id))) | (hoasinduction_lem0 != $true)) & (! [X247 : term] : ? [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) = ((X248 @ sh @ one))) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X247 : term] : ! [X248 : (subst > term > term)] : (((sub @ X247 @ (push @ one @ sh))) != ((X248 @ sh @ one)))) & (! [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true != ((X215 @ X214))) | (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) = $true)) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X215 : (term > $o),X216 : term,X213 : (term > $o),X214 : term,X212 : subst] : (($true = ((X215 @ X214))) & (((X213 @ (sub @ X214 @ (push @ X216 @ X212)))) != $true))) & (! [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 = X325) | (((ap @ (sub @ X324 @ id) @ X325)) != ((ap @ (sub @ X322 @ id) @ X323)))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X325 : term,X324 : term,X322 : term,X323 : term] : ((X323 != X325) & (((ap @ (sub @ X324 @ id) @ X325)) = ((ap @ (sub @ X322 @ id) @ X323))))) & (! [X93 : (term > $o),X94 : term] : ((((X93 @ X94)) = $true) | ? [X95 : term,X96 : term] : (($true = ((X93 @ X95))) & ($true = ((X93 @ X96))) & ($true != ((X93 @ (ap @ X95 @ X96))))) | ? [X98 : term] : (($true = ((X93 @ X98))) & ($true != ((X93 @ (lam @ X98))))) | ? [X97 : term] : (($true != ((X93 @ X97))) & (((var @ X97)) = $true))) | (induction != $true)) & ((induction = $true) | ? [X93 : (term > $o),X94 : term] : ((((X93 @ X94)) != $true) & ! [X95 : term,X96 : term] : (($true != ((X93 @ X95))) | ($true != ((X93 @ X96))) | ($true = ((X93 @ (ap @ X95 @ X96))))) & ! [X98 : term] : (($true != ((X93 @ X98))) | ($true = ((X93 @ (lam @ X98))))) & ! [X97 : term] : (($true = ((X93 @ X97))) | (((var @ X97)) != $true)))) & (termmset_gthm = $true) & ((substmonoid = $true) | ? [X520 : subst] : (((comp @ X520 @ id)) != X520) | ? [X521 : subst] : (((comp @ id @ X521)) != X521)) & ((! [X520 : subst] : (((comp @ X520 @ id)) = X520) & ! [X521 : subst] : (((comp @ id @ X521)) = X521)) | (substmonoid != $true)) & (hoasinduction_lem1v2 = $true) & (axmap = $true) & (! [X171 : (subst > term > term),X172 : (subst > term > term),X174 : subst,X173 : term] : (? [X178 : subst,X180 : term,X179 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) != ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) | ? [X177 : subst,X176 : term,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) != ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))) | (((lam @ (X171 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((X172 @ X174 @ X173)) = ((X171 @ X174 @ X173)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X171 : (subst > term > term),X172 : (subst > term > term),X174 : subst,X173 : term] : (! [X178 : subst,X180 : term,X179 : subst] : (((sub @ (X172 @ X179 @ X180) @ X178)) = ((X172 @ (comp @ X179 @ X178) @ (sub @ X180 @ X178)))) & ! [X177 : subst,X176 : term,X175 : subst] : (((sub @ (X171 @ X177 @ X176) @ X175)) = ((X171 @ (comp @ X177 @ X175) @ (sub @ X176 @ X175)))) & (((lam @ (X171 @ sh @ one))) = ((lam @ (X172 @ sh @ one)))) & (((X172 @ X174 @ X173)) != ((X171 @ X174 @ X173))))) & (? [X32 : term] : (((sub @ X32 @ id)) != X32) | ! [X33 : term] : (((sub @ X33 @ id)) = X33) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X32 : term] : (((sub @ X32 @ id)) = X32) & ? [X33 : term] : (((sub @ X33 @ id)) != X33))) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem3v2_f = $true) | ? [X182 : term] : ! [X183 : (subst > term > term)] : ? [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) != ((X183 @ X184 @ X185)))) & (! [X182 : term] : ? [X183 : (subst > term > term)] : ! [X184 : subst,X185 : term] : (((sub @ X182 @ (push @ X185 @ X184))) = ((X183 @ X184 @ X185))) | (hoasinduction_lem3v2_f != $true)) & (apnotvar = $true) & ((axscons = $true) | ? [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) != X170)) & (! [X170 : subst] : (((push @ (sub @ one @ X170) @ (comp @ sh @ X170))) = X170) | (axscons != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axabs = $true) & ((hoasinduction_lem2 = $true) | ? [X331 : term,X330 : term,X332 : (subst > term > subst > $o)] : (! [X342 : term,X341 : term] : ((((X332 @ id @ X341 @ id)) != $true) | (((X332 @ id @ X342 @ id)) != $true) | (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) = $true)) & ($true != ((X332 @ id @ (ap @ X331 @ X330) @ id))) & ! [X339 : term,X337 : subst,X338 : subst,X340 : subst] : (($true = ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) | (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) != $true)) & ! [X333 : subst,X334 : term,X335 : subst,X336 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) != $true) | ($true = ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) & ($true = ((X332 @ id @ X331 @ id))) & (((X332 @ id @ X330 @ id)) = $true))) & (! [X331 : term,X330 : term,X332 : (subst > term > subst > $o)] : (? [X342 : term,X341 : term] : ((((X332 @ id @ X341 @ id)) = $true) & (((X332 @ id @ X342 @ id)) = $true) & (((X332 @ id @ (ap @ (sub @ X341 @ id) @ X342) @ id)) != $true)) | ($true = ((X332 @ id @ (ap @ X331 @ X330) @ id))) | ? [X339 : term,X337 : subst,X338 : subst,X340 : subst] : (($true != ((X332 @ (comp @ X340 @ X337) @ (sub @ X339 @ X337) @ X338))) & (((X332 @ X340 @ X339 @ (comp @ X337 @ X338))) = $true)) | ? [X333 : subst,X334 : term,X335 : subst,X336 : subst] : ((((X332 @ (comp @ X335 @ X336) @ (sub @ X334 @ X336) @ X333)) = $true) & ($true != ((X332 @ X335 @ X334 @ (comp @ X336 @ X333))))) | ($true != ((X332 @ id @ X331 @ id))) | (((X332 @ id @ X330 @ id)) != $true)) | (hoasinduction_lem2 != $true)) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3aaa = $true) | ? [X130 : term,X129 : (subst > term > subst > $o)] : ((((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) != $true) & ! [X131 : term] : (($true != ((X129 @ id @ X131 @ id))) | (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) = $true)) & ! [X133 : (subst > term > term),X132 : term] : (? [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) != ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) | ? [X140 : term] : (($true != ((X129 @ id @ (X133 @ id @ X140) @ id))) & (((X129 @ id @ X140 @ id)) = $true)) | (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) = $true) | ? [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) != ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139)))))) & (! [X130 : term,X129 : (subst > term > subst > $o)] : ((((X129 @ id @ (lam @ (sub @ X130 @ (push @ one @ sh))) @ id)) = $true) | ? [X131 : term] : (($true = ((X129 @ id @ X131 @ id))) & (((X129 @ id @ (sub @ X130 @ (push @ X131 @ id)) @ id)) != $true)) | ? [X133 : (subst > term > term),X132 : term] : (! [X135 : term,X136 : subst,X134 : subst] : (((X133 @ (comp @ X136 @ X134) @ (sub @ X135 @ X134))) = ((sub @ X132 @ (push @ (sub @ X135 @ X134) @ (comp @ X136 @ X134))))) & ! [X140 : term] : (($true = ((X129 @ id @ (X133 @ id @ X140) @ id))) | (((X129 @ id @ X140 @ id)) != $true)) & (((X129 @ id @ (lam @ (X133 @ sh @ one)) @ id)) != $true) & ! [X138 : term,X137 : subst,X139 : subst] : (((sub @ (X133 @ X137 @ X138) @ X139)) = ((sub @ (sub @ X132 @ (push @ X138 @ X137)) @ X139))))) | (hoasinduction_lem3aaa != $true)) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (axclos = $true) & (! [X157 : term,X156 : term] : ((X156 = X157) | (((sub @ X157 @ sh)) != ((sub @ X156 @ sh)))) | (shinj != $true)) & ((shinj = $true) | ? [X157 : term,X156 : term] : ((X156 != X157) & (((sub @ X157 @ sh)) = ((sub @ X156 @ sh))))) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (hoasinduction_lem1_lthm = $true) & (? [X39 : term] : (((sub @ X39 @ id)) != X39) | ($true = sP5) | ? [X40 : (subst > term > subst > $o),X41 : term] : (! [X43 : (subst > term > term)] : (? [X47 : subst,X46 : subst,X45 : term] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) != ((sub @ (X43 @ X47 @ X45) @ X46))) | ? [X44 : term] : (($true = ((X40 @ id @ X44 @ id))) & ($true != ((X40 @ id @ (X43 @ id @ X44) @ id)))) | ($true = ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) & ! [X42 : term] : (($true != ((X40 @ id @ X42 @ id))) | (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) = $true)) & ($true != ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X39 : term] : (((sub @ X39 @ id)) = X39) & ($true != sP5) & ! [X40 : (subst > term > subst > $o),X41 : term] : (? [X43 : (subst > term > term)] : (! [X47 : subst,X46 : subst,X45 : term] : (((X43 @ (comp @ X47 @ X46) @ (sub @ X45 @ X46))) = ((sub @ (X43 @ X47 @ X45) @ X46))) & ! [X44 : term] : (($true != ((X40 @ id @ X44 @ id))) | ($true = ((X40 @ id @ (X43 @ id @ X44) @ id)))) & ($true != ((X40 @ id @ (lam @ (X43 @ sh @ one)) @ id)))) | ? [X42 : term] : (($true = ((X40 @ id @ X42 @ id))) & (((X40 @ id @ (sub @ X41 @ (push @ X42 @ id)) @ id)) != $true)) | ($true = ((X40 @ id @ (lam @ (sub @ X41 @ (push @ one @ sh))) @ id)))))) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ! [X169 : d_term] : (d_one = X169) & ((hoasinduction_lem3a_lthm = $true) | (? [X110 : term,X111 : (subst > term > subst > $o)] : (! [X112 : term] : (($true = ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) | ($true != ((X111 @ id @ X112 @ id)))) & ($true != ((X111 @ id @ (lam @ X110) @ id))) & ! [X113 : (subst > term > term)] : (($true = ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) | ? [X114 : term] : (($true != ((X111 @ id @ (X113 @ id @ X114) @ id))) & (((X111 @ id @ X114 @ id)) = $true)) | ? [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) != ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))))) & ! [X101 : term] : (((sub @ X101 @ id)) = X101) & ! [X102 : (subst > term > subst > $o),X103 : term] : (? [X105 : (subst > term > term)] : (($true != ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) & ! [X106 : term] : ((((X102 @ id @ X106 @ id)) != $true) | (((X102 @ id @ (X105 @ id @ X106) @ id)) = $true)) & ! [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) = ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) | ($true = ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) | ? [X104 : term] : ((((X102 @ id @ X104 @ id)) = $true) & ($true != ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id))))))) & (! [X110 : term,X111 : (subst > term > subst > $o)] : (? [X112 : term] : (($true != ((X111 @ id @ (sub @ X110 @ (push @ X112 @ id)) @ id))) & ($true = ((X111 @ id @ X112 @ id)))) | ($true = ((X111 @ id @ (lam @ X110) @ id))) | ? [X113 : (subst > term > term)] : (($true != ((X111 @ id @ (lam @ (X113 @ sh @ one)) @ id))) & ! [X114 : term] : (($true = ((X111 @ id @ (X113 @ id @ X114) @ id))) | (((X111 @ id @ X114 @ id)) != $true)) & ! [X117 : subst,X116 : subst,X115 : term] : (((sub @ (X113 @ X116 @ X115) @ X117)) = ((X113 @ (comp @ X116 @ X117) @ (sub @ X115 @ X117)))))) | ? [X101 : term] : (((sub @ X101 @ id)) != X101) | ? [X102 : (subst > term > subst > $o),X103 : term] : (! [X105 : (subst > term > term)] : (($true = ((X102 @ id @ (lam @ (X105 @ sh @ one)) @ id))) | ? [X106 : term] : ((((X102 @ id @ X106 @ id)) = $true) & (((X102 @ id @ (X105 @ id @ X106) @ id)) != $true)) | ? [X107 : term,X108 : subst,X109 : subst] : (((sub @ (X105 @ X109 @ X107) @ X108)) != ((X105 @ (comp @ X109 @ X108) @ (sub @ X107 @ X108))))) & ($true != ((X102 @ id @ (lam @ (sub @ X103 @ (push @ one @ sh))) @ id))) & ! [X104 : term] : ((((X102 @ id @ X104 @ id)) != $true) | ($true = ((X102 @ id @ (sub @ X103 @ (push @ X104 @ id)) @ id))))) | (hoasinduction_lem3a_lthm != $true)) & (! [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) = X260) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X261 : subst,X260 : term] : (((sub @ one @ (push @ X260 @ X261))) != X260)) & (hoaslamnotvar = $true) & (hoasinduction_lem3_gthm = $true) & ((hoasapinj2_lthm = $true) | (! [X66 : term,X65 : term,X67 : term,X64 : term] : ((X64 = X66) | (((ap @ X67 @ X66)) != ((ap @ X65 @ X64)))) & ? [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 != X70) & (((ap @ (sub @ X71 @ id) @ X69)) = ((ap @ (sub @ X68 @ id) @ X70)))))) & (? [X66 : term,X65 : term,X67 : term,X64 : term] : ((X64 != X66) & (((ap @ X67 @ X66)) = ((ap @ X65 @ X64)))) | ! [X70 : term,X71 : term,X68 : term,X69 : term] : ((X69 = X70) | (((ap @ (sub @ X71 @ id) @ X69)) != ((ap @ (sub @ X68 @ id) @ X70)))) | (hoasapinj2_lthm != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X435 : (term > $o),X437 : term,X436 : (subst > term > subst > $o)] : (($true = ((X435 @ (lam @ X437)))) | ? [X444 : term] : (($true != ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) & (((X435 @ X444)) = $true)) | ? [X439 : (subst > term > term)] : (! [X440 : term] : ((((X436 @ id @ X440 @ id)) != $true) | ($true = ((X436 @ id @ (X439 @ id @ X440) @ id)))) & (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) != $true) & ! [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) = ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) | ? [X438 : term] : (((X435 @ X438)) != ((X436 @ id @ X438 @ id)))) & ! [X427 : term,X428 : (term > $o)] : (? [X433 : term,X432 : term] : (($true = ((X428 @ X432))) & ($true != ((X428 @ (ap @ X432 @ X433)))) & ($true = ((X428 @ X433)))) | ? [X429 : term] : ((((X428 @ X429)) != $true) & ($true = ((var @ X429)))) | ? [X430 : term] : (($true != ((X428 @ (lam @ X430)))) & ! [X431 : term] : ((((X428 @ (sub @ X430 @ (push @ X431 @ id)))) = $true) | ($true != ((X428 @ X431))))) | ($true = ((X428 @ X427)))) & ($true != sP4) & ! [X424 : (subst > term > subst > $o)] : ? [X425 : (term > $o)] : ! [X426 : term] : (((X424 @ id @ X426 @ id)) = ((X425 @ X426))) & ! [X434 : term] : (((sub @ X434 @ id)) = X434))) & (? [X435 : (term > $o),X437 : term,X436 : (subst > term > subst > $o)] : (($true != ((X435 @ (lam @ X437)))) & ! [X444 : term] : (($true = ((X435 @ (sub @ X437 @ (push @ X444 @ id))))) | (((X435 @ X444)) != $true)) & ! [X439 : (subst > term > term)] : (? [X440 : term] : ((((X436 @ id @ X440 @ id)) = $true) & ($true != ((X436 @ id @ (X439 @ id @ X440) @ id)))) | (((X436 @ id @ (lam @ (X439 @ sh @ one)) @ id)) = $true) | ? [X443 : subst,X442 : subst,X441 : term] : (((sub @ (X439 @ X443 @ X441) @ X442)) != ((X439 @ (comp @ X443 @ X442) @ (sub @ X441 @ X442))))) & ! [X438 : term] : (((X435 @ X438)) = ((X436 @ id @ X438 @ id)))) | ? [X427 : term,X428 : (term > $o)] : (! [X433 : term,X432 : term] : (($true != ((X428 @ X432))) | ($true = ((X428 @ (ap @ X432 @ X433)))) | ($true != ((X428 @ X433)))) & ! [X429 : term] : ((((X428 @ X429)) = $true) | ($true != ((var @ X429)))) & ! [X430 : term] : (($true = ((X428 @ (lam @ X430)))) | ? [X431 : term] : ((((X428 @ (sub @ X430 @ (push @ X431 @ id)))) != $true) & ($true = ((X428 @ X431))))) & ($true != ((X428 @ X427)))) | ($true = sP4) | ? [X424 : (subst > term > subst > $o)] : ! [X425 : (term > $o)] : ? [X426 : term] : (((X424 @ id @ X426 @ id)) != ((X425 @ X426))) | ? [X434 : term] : (((sub @ X434 @ id)) != X434) | (hoasinduction_lthm_3 != $true)) & (substmonoid_gthm = $true) & (! [X343 : term] : ? [X344 : (subst > term > term)] : ! [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) = ((X344 @ X346 @ X345))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X343 : term] : ! [X344 : (subst > term > term)] : ? [X345 : term,X346 : subst] : (((sub @ X343 @ (push @ X345 @ X346))) != ((X344 @ X346 @ X345)))) & (axassoc = $true) & (! [X367 : subst,X365 : (term > $o),X366 : term] : ? [X368 : (term > $o)] : ! [X369 : term] : (((X368 @ X369)) = ((X365 @ (sub @ X369 @ (push @ X366 @ X367))))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X367 : subst,X365 : (term > $o),X366 : term] : ! [X368 : (term > $o)] : ? [X369 : term] : (((X368 @ X369)) != ((X365 @ (sub @ X369 @ (push @ X366 @ X367)))))) & (! [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) != ((ap @ (sub @ X122 @ id) @ X121))) | (X122 = X123)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X122 : term,X123 : term,X124 : term,X121 : term] : ((((ap @ (sub @ X123 @ id) @ X124)) = ((ap @ (sub @ X122 @ id) @ X121))) & (X122 != X123))) & (hoasapnotvar = $true) & ((hoasinduction_lthm = $true) | (! [X379 : term,X378 : (subst > term > subst > $o),X377 : term] : (? [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true = ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) & ($true != ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) | ($true != ((X378 @ id @ X379 @ id))) | ? [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) = $true) & (((X378 @ id @ X381 @ id)) = $true) & (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) != $true)) | ? [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) = $true) & ($true != ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) | ($true = ((X378 @ id @ (ap @ X377 @ X379) @ id))) | ($true != ((X378 @ id @ X377 @ id)))) & ! [X371 : (term > $o),X370 : term] : (? [X372 : term] : (($true != ((X371 @ (lam @ X372)))) & ! [X373 : term] : ((((X371 @ X373)) != $true) | (((X371 @ (sub @ X372 @ (push @ X373 @ id)))) = $true))) | ? [X374 : term] : ((((var @ X374)) = $true) & ($true != ((X371 @ X374)))) | ? [X375 : term,X376 : term] : (($true != ((X371 @ (ap @ X376 @ X375)))) & (((X371 @ X375)) = $true) & ($true = ((X371 @ X376)))) | (((X371 @ X370)) = $true)) & (sP2 != $true) & ($true != sP1))) & (? [X379 : term,X378 : (subst > term > subst > $o),X377 : term] : (! [X382 : term,X383 : subst,X384 : subst,X385 : subst] : (($true != ((X378 @ (comp @ X383 @ X384) @ (sub @ X382 @ X384) @ X385))) | ($true = ((X378 @ X383 @ X382 @ (comp @ X384 @ X385))))) & ($true = ((X378 @ id @ X379 @ id))) & ! [X381 : term,X380 : term] : ((((X378 @ id @ X380 @ id)) != $true) | (((X378 @ id @ X381 @ id)) != $true) | (((X378 @ id @ (ap @ (sub @ X381 @ id) @ X380) @ id)) = $true)) & ! [X388 : subst,X387 : term,X386 : subst,X389 : subst] : ((((X378 @ X386 @ X387 @ (comp @ X389 @ X388))) != $true) | ($true = ((X378 @ (comp @ X386 @ X389) @ (sub @ X387 @ X389) @ X388)))) & ($true != ((X378 @ id @ (ap @ X377 @ X379) @ id))) & ($true = ((X378 @ id @ X377 @ id)))) | ? [X371 : (term > $o),X370 : term] : (! [X372 : term] : (($true = ((X371 @ (lam @ X372)))) | ? [X373 : term] : ((((X371 @ X373)) = $true) & (((X371 @ (sub @ X372 @ (push @ X373 @ id)))) != $true))) & ! [X374 : term] : ((((var @ X374)) != $true) | ($true = ((X371 @ X374)))) & ! [X375 : term,X376 : term] : (($true = ((X371 @ (ap @ X376 @ X375)))) | (((X371 @ X375)) != $true) | ($true != ((X371 @ X376)))) & (((X371 @ X370)) != $true)) | (sP2 = $true) | ($true = sP1) | (hoasinduction_lthm != $true)) & (! [X217 : term] : (((sub @ X217 @ id)) = X217) | (termmset != $true)) & ((termmset = $true) | ? [X217 : term] : (((sub @ X217 @ id)) != X217)) & (ulamvarsh = $true) & (id = ((d2subst @ d_id))) & (! [X165 : term] : ? [X166 : (subst > term > term)] : (((X166 @ sh @ one)) = ((sub @ X165 @ (push @ one @ sh)))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X165 : term] : ! [X166 : (subst > term > term)] : (((X166 @ sh @ one)) != ((sub @ X165 @ (push @ one @ sh))))) & (! [X159 : (term > $o),X158 : term] : (($true = ((X159 @ X158))) | ? [X163 : term] : (! [X164 : term] : (($true = ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) | ($true != ((X159 @ X164)))) & (((X159 @ (lam @ X163))) != $true)) | ? [X160 : term,X161 : term] : (($true != ((X159 @ (ap @ X160 @ X161)))) & (((X159 @ X161)) = $true) & (((X159 @ X160)) = $true)) | ? [X162 : term] : (($true != ((X159 @ X162))) & (((var @ X162)) = $true))) | (induction2 != $true)) & ((induction2 = $true) | ? [X159 : (term > $o),X158 : term] : (($true != ((X159 @ X158))) & ! [X163 : term] : (? [X164 : term] : (($true != ((X159 @ (sub @ X163 @ (push @ X164 @ id))))) & ($true = ((X159 @ X164)))) | (((X159 @ (lam @ X163))) = $true)) & ! [X160 : term,X161 : term] : (($true = ((X159 @ (ap @ X160 @ X161)))) | (((X159 @ X161)) != $true) | (((X159 @ X160)) != $true)) & ! [X162 : term] : (($true = ((X159 @ X162))) | (((var @ X162)) != $true)))) & (pushprop_lthm_orig = $true) & (lamnotvar = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem1_gthm = $true)),
  inference(flattening,[],[f57])).
thf(f59,plain,(
  ((hoasinduction_lem3v2_lthm = $true) | (? [X0 : term,X1 : (subst > term > subst > $o),X2 : (term > $o)] : (! [X3 : term] : ((((X2 @ X3)) != $true) | ($true = ((X2 @ (sub @ X0 @ (push @ X3 @ id)))))) & ! [X4 : term] : (((X2 @ X4)) = ((X1 @ id @ X4 @ id))) & ! [X5 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X5 @ sh @ one)) @ id)) = $true) | ? [X6 : term] : ((((X1 @ id @ X6 @ id)) = $true) & ($true != ((X1 @ id @ (X5 @ id @ X6) @ id)))) | ? [X7 : term,X8 : subst,X9 : subst] : (((sub @ (X5 @ X8 @ X7) @ X9)) != ((X5 @ (comp @ X8 @ X9) @ (sub @ X7 @ X9))))) & ! [X10 : subst,X11 : subst,X12 : term,X13 : subst] : (($true = ((X1 @ (comp @ X13 @ X10) @ (sub @ X12 @ X10) @ X11))) | (((X1 @ X13 @ X12 @ (comp @ X10 @ X11))) != $true)) & (((X2 @ (lam @ X0))) != $true) & ! [X14 : subst,X15 : subst,X16 : subst,X17 : term] : ((((X1 @ (comp @ X15 @ X16) @ (sub @ X17 @ X16) @ X14)) != $true) | ($true = ((X1 @ X15 @ X17 @ (comp @ X16 @ X14)))))) & ! [X18 : term] : (((sub @ X18 @ id)) = X18))) & (! [X19 : term,X20 : (subst > term > subst > $o),X21 : (term > $o)] : (? [X22 : term] : (($true = ((X21 @ X22))) & (((X21 @ (sub @ X19 @ (push @ X22 @ id)))) != $true)) | ? [X23 : term] : (((X20 @ id @ X23 @ id)) != ((X21 @ X23))) | ? [X24 : (subst > term > term)] : (($true != ((X20 @ id @ (lam @ (X24 @ sh @ one)) @ id))) & ! [X25 : term] : ((((X20 @ id @ X25 @ id)) != $true) | (((X20 @ id @ (X24 @ id @ X25) @ id)) = $true)) & ! [X26 : term,X27 : subst,X28 : subst] : (((sub @ (X24 @ X27 @ X26) @ X28)) = ((X24 @ (comp @ X27 @ X28) @ (sub @ X26 @ X28))))) | ? [X29 : subst,X30 : subst,X31 : term,X32 : subst] : (($true != ((X20 @ (comp @ X32 @ X29) @ (sub @ X31 @ X29) @ X30))) & ($true = ((X20 @ X32 @ X31 @ (comp @ X29 @ X30))))) | ($true = ((X21 @ (lam @ X19)))) | ? [X33 : subst,X34 : subst,X35 : subst,X36 : term] : (($true = ((X20 @ (comp @ X34 @ X35) @ (sub @ X36 @ X35) @ X33))) & ($true != ((X20 @ X34 @ X36 @ (comp @ X35 @ X33)))))) | ? [X37 : term] : (((sub @ X37 @ id)) != X37) | (hoasinduction_lem3v2_lthm != $true)) & (! [X38 : (subst > term > term),X39 : term,X40 : term] : (? [X41 : term,X42 : subst,X43 : subst] : (((X38 @ (comp @ X42 @ X43) @ (sub @ X41 @ X43))) != ((sub @ (X38 @ X42 @ X41) @ X43))) | (((lam @ (X38 @ sh @ one))) != ((ap @ (sub @ X40 @ id) @ X39)))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | ? [X44 : (subst > term > term),X45 : term,X46 : term] : (! [X47 : term,X48 : subst,X49 : subst] : (((sub @ (X44 @ X48 @ X47) @ X49)) = ((X44 @ (comp @ X48 @ X49) @ (sub @ X47 @ X49)))) & (((ap @ (sub @ X46 @ id) @ X45)) = ((lam @ (X44 @ sh @ one)))))) & ((hoasinduction_lem3v2 = $true) | ? [X50 : term,X51 : (subst > term > subst > $o),X52 : (term > $o)] : (($true != ((X52 @ (lam @ X50)))) & ! [X53 : subst,X54 : term,X55 : subst,X56 : subst] : (($true != ((X51 @ (comp @ X53 @ X55) @ (sub @ X54 @ X55) @ X56))) | (((X51 @ X53 @ X54 @ (comp @ X55 @ X56))) = $true)) & ! [X57 : term] : (((X51 @ id @ X57 @ id)) = ((X52 @ X57))) & ! [X58 : subst,X59 : term,X60 : subst,X61 : subst] : (($true != ((X51 @ X58 @ X59 @ (comp @ X61 @ X60)))) | (((X51 @ (comp @ X58 @ X61) @ (sub @ X59 @ X61) @ X60)) = $true)) & ! [X62 : term] : ((((X52 @ X62)) != $true) | ($true = ((X52 @ (sub @ X50 @ (push @ X62 @ id)))))) & ! [X63 : (subst > term > term)] : (? [X64 : term] : (($true != ((X51 @ id @ (X63 @ id @ X64) @ id))) & ($true = ((X51 @ id @ X64 @ id)))) | (((X51 @ id @ (lam @ (X63 @ sh @ one)) @ id)) = $true) | ? [X65 : subst,X66 : subst,X67 : term] : (((X63 @ (comp @ X66 @ X65) @ (sub @ X67 @ X65))) != ((sub @ (X63 @ X66 @ X67) @ X65)))))) & (! [X68 : term,X69 : (subst > term > subst > $o),X70 : (term > $o)] : (($true = ((X70 @ (lam @ X68)))) | ? [X71 : subst,X72 : term,X73 : subst,X74 : subst] : (($true = ((X69 @ (comp @ X71 @ X73) @ (sub @ X72 @ X73) @ X74))) & ($true != ((X69 @ X71 @ X72 @ (comp @ X73 @ X74))))) | ? [X75 : term] : (((X70 @ X75)) != ((X69 @ id @ X75 @ id))) | ? [X76 : subst,X77 : term,X78 : subst,X79 : subst] : (($true = ((X69 @ X76 @ X77 @ (comp @ X79 @ X78)))) & (((X69 @ (comp @ X76 @ X79) @ (sub @ X77 @ X79) @ X78)) != $true)) | ? [X80 : term] : (($true = ((X70 @ X80))) & (((X70 @ (sub @ X68 @ (push @ X80 @ id)))) != $true)) | ? [X81 : (subst > term > term)] : (! [X82 : term] : ((((X69 @ id @ (X81 @ id @ X82) @ id)) = $true) | ($true != ((X69 @ id @ X82 @ id)))) & (((X69 @ id @ (lam @ (X81 @ sh @ one)) @ id)) != $true) & ! [X83 : subst,X84 : subst,X85 : term] : (((sub @ (X81 @ X84 @ X85) @ X83)) = ((X81 @ (comp @ X84 @ X83) @ (sub @ X85 @ X83)))))) | (hoasinduction_lem3v2 != $true)) & (! [X86 : term,X87 : (subst > term > subst > $o)] : (? [X88 : (subst > term > term)] : (! [X89 : term] : ((((X87 @ id @ (X88 @ id @ X89) @ id)) = $true) | ($true != ((X87 @ id @ X89 @ id)))) & (((X87 @ id @ (lam @ (X88 @ sh @ one)) @ id)) != $true) & ! [X90 : term,X91 : subst,X92 : subst] : (((X88 @ (comp @ X92 @ X91) @ (sub @ X90 @ X91))) = ((sub @ (X88 @ X92 @ X90) @ X91)))) | (((X87 @ id @ X86 @ id)) = $true) | ? [X93 : term,X94 : term] : (($true = ((X87 @ id @ X94 @ id))) & (((X87 @ id @ X93 @ id)) = $true) & (((X87 @ id @ (ap @ (sub @ X93 @ id) @ X94) @ id)) != $true))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | ? [X95 : term,X96 : (subst > term > subst > $o)] : (! [X97 : (subst > term > term)] : (? [X98 : term] : ((((X96 @ id @ (X97 @ id @ X98) @ id)) != $true) & ($true = ((X96 @ id @ X98 @ id)))) | (((X96 @ id @ (lam @ (X97 @ sh @ one)) @ id)) = $true) | ? [X99 : term,X100 : subst,X101 : subst] : (((X97 @ (comp @ X101 @ X100) @ (sub @ X99 @ X100))) != ((sub @ (X97 @ X101 @ X99) @ X100)))) & ($true != ((X96 @ id @ X95 @ id))) & ! [X102 : term,X103 : term] : ((((X96 @ id @ X103 @ id)) != $true) | ($true != ((X96 @ id @ X102 @ id))) | ($true = ((X96 @ id @ (ap @ (sub @ X102 @ id) @ X103) @ id)))))) & (hoasapinj1_gthm = $true) & (hoaslamnotap_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & ! [X104 : d_subst,X105 : d_subst] : ((((d2subst @ X105)) != ((d2subst @ X104))) | (X104 = X105)) & ((hoasinduction_lem3v2a_lthm = $true) | (? [X106 : (term > $o),X107 : (subst > term > subst > $o),X108 : term] : (($true != ((X106 @ (lam @ X108)))) & ! [X109 : term] : ((((X106 @ X109)) != $true) | (((X106 @ (sub @ X108 @ (push @ X109 @ id)))) = $true)) & ! [X110 : term] : (((X107 @ id @ X110 @ id)) = ((X106 @ X110))) & ! [X111 : (subst > term > term)] : (? [X112 : subst,X113 : term,X114 : subst] : (((X111 @ (comp @ X112 @ X114) @ (sub @ X113 @ X114))) != ((sub @ (X111 @ X112 @ X113) @ X114))) | (((X107 @ id @ (lam @ (X111 @ sh @ one)) @ id)) = $true) | ? [X115 : term] : ((((X107 @ id @ X115 @ id)) = $true) & (((X107 @ id @ (X111 @ id @ X115) @ id)) != $true)))) & ! [X116 : term] : (((sub @ X116 @ id)) = X116) & ! [X117 : term] : ? [X118 : (subst > term > term)] : ! [X119 : subst,X120 : term] : (((sub @ X117 @ (push @ X120 @ X119))) = ((X118 @ X119 @ X120))))) & (! [X121 : (term > $o),X122 : (subst > term > subst > $o),X123 : term] : (($true = ((X121 @ (lam @ X123)))) | ? [X124 : term] : ((((X121 @ X124)) = $true) & ($true != ((X121 @ (sub @ X123 @ (push @ X124 @ id)))))) | ? [X125 : term] : (((X121 @ X125)) != ((X122 @ id @ X125 @ id))) | ? [X126 : (subst > term > term)] : (! [X127 : subst,X128 : term,X129 : subst] : (((X126 @ (comp @ X127 @ X129) @ (sub @ X128 @ X129))) = ((sub @ (X126 @ X127 @ X128) @ X129))) & ($true != ((X122 @ id @ (lam @ (X126 @ sh @ one)) @ id))) & ! [X130 : term] : ((((X122 @ id @ X130 @ id)) != $true) | ($true = ((X122 @ id @ (X126 @ id @ X130) @ id)))))) | ? [X131 : term] : (((sub @ X131 @ id)) != X131) | ? [X132 : term] : ! [X133 : (subst > term > term)] : ? [X134 : subst,X135 : term] : (((sub @ X132 @ (push @ X135 @ X134))) != ((X133 @ X134 @ X135))) | (hoasinduction_lem3v2a_lthm != $true)) & (hoaslamnotvar_lthm = $true) & ((pushprop_lem0 = $true) | ? [X136 : term,X137 : (term > $o),X138 : subst] : ! [X139 : (term > $o)] : ? [X140 : term] : (((X137 @ (sub @ X140 @ (push @ X136 @ X138)))) != ((X139 @ X140)))) & (! [X141 : term,X142 : (term > $o),X143 : subst] : ? [X144 : (term > $o)] : ! [X145 : term] : (((X144 @ X145)) = ((X142 @ (sub @ X145 @ (push @ X141 @ X143))))) | (pushprop_lem0 != $true)) & (hoasinduction_lem2_lthm = $true) & (! [X146 : subst] : (((comp @ X146 @ id)) = X146) | (axidr != $true)) & ((axidr = $true) | ? [X147 : subst] : (((comp @ X147 @ id)) != X147)) & (induction2_gthm = $true) & ! [X148 : d_subst] : (d_id = X148) & (! [X149 : subst,X150 : (term > $o),X151 : (term > $o),X152 : term] : (? [X153 : term] : (((X150 @ X153)) != ((X151 @ (sub @ X153 @ (push @ X152 @ X149))))) | ($true != ((X151 @ X152))) | (((X150 @ one)) = $true)) | ? [X154 : term,X155 : subst] : (((sub @ one @ (push @ X154 @ X155))) != X154) | (pushprop_lem1v2_lthm != $true)) & ((pushprop_lem1v2_lthm = $true) | (? [X156 : subst,X157 : (term > $o),X158 : (term > $o),X159 : term] : (! [X160 : term] : (((X158 @ (sub @ X160 @ (push @ X159 @ X156)))) = ((X157 @ X160))) & (((X158 @ X159)) = $true) & ($true != ((X157 @ one)))) & ! [X161 : term,X162 : subst] : (((sub @ one @ (push @ X161 @ X162))) = X161))) & (pushprop_lthm = $true) & ! [X163 : subst] : ? [X164 : d_subst] : (((d2subst @ X164)) = X163) & (? [X165 : term,X166 : term] : ((X165 != X166) & (((lam @ X165)) = ((lam @ X166)))) | ? [X167 : term,X168 : subst] : (((comp @ sh @ (push @ X167 @ X168))) != X168) | ? [X169 : term,X170 : subst] : (((sub @ one @ (push @ X169 @ X170))) != X169) | ! [X171 : subst,X172 : (subst > term > term),X173 : term,X174 : (subst > term > term)] : (? [X175 : subst,X176 : term,X177 : subst] : (((sub @ (X174 @ X175 @ X176) @ X177)) != ((X174 @ (comp @ X175 @ X177) @ (sub @ X176 @ X177)))) | (((X172 @ X171 @ X173)) = ((X174 @ X171 @ X173))) | (((lam @ (X174 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | ? [X178 : term,X179 : subst,X180 : subst] : (((sub @ (X172 @ X180 @ X178) @ X179)) != ((X172 @ (comp @ X180 @ X179) @ (sub @ X178 @ X179))))) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (! [X181 : term,X182 : term] : ((X181 = X182) | (((lam @ X181)) != ((lam @ X182)))) & ! [X183 : term,X184 : subst] : (((comp @ sh @ (push @ X183 @ X184))) = X184) & ! [X185 : term,X186 : subst] : (((sub @ one @ (push @ X185 @ X186))) = X185) & ? [X187 : subst,X188 : (subst > term > term),X189 : term,X190 : (subst > term > term)] : (! [X191 : subst,X192 : term,X193 : subst] : (((sub @ (X190 @ X191 @ X192) @ X193)) = ((X190 @ (comp @ X191 @ X193) @ (sub @ X192 @ X193)))) & (((X190 @ X187 @ X189)) != ((X188 @ X187 @ X189))) & (((lam @ (X190 @ sh @ one))) = ((lam @ (X188 @ sh @ one)))) & ! [X194 : term,X195 : subst,X196 : subst] : (((X188 @ (comp @ X196 @ X195) @ (sub @ X194 @ X195))) = ((sub @ (X188 @ X196 @ X194) @ X195)))))) & (hoasinduction_lem1v2_gthm = $true) & (! [X197 : (subst > term > subst > $o)] : ? [X198 : (term > $o)] : ! [X199 : term] : (((X198 @ X199)) = ((X197 @ id @ X199 @ id))) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X200 : (subst > term > subst > $o)] : ! [X201 : (term > $o)] : ? [X202 : term] : (((X201 @ X202)) != ((X200 @ id @ X202 @ id)))) & ! [X203 : term] : ? [X204 : d_term] : (((d2term @ X204)) = X203) & (((d2subst @ d_id)) = sh) & (pushprop_lem3v2_lthm = $true) & ((pushprop_lem1_lthm = $true) | (! [X205 : subst,X206 : term] : (((sub @ one @ (push @ X206 @ X205))) = X206) & ! [X207 : subst,X208 : term] : (((comp @ sh @ (push @ X208 @ X207))) = X207) & ? [X209 : (term > $o),X210 : term,X211 : subst,X212 : term,X213 : (term > $o)] : ((((X209 @ (sub @ X212 @ (push @ X210 @ X211)))) != $true) & ($true = ((X213 @ X212)))))) & (? [X214 : subst,X215 : term] : (((sub @ one @ (push @ X215 @ X214))) != X215) | ? [X216 : subst,X217 : term] : (((comp @ sh @ (push @ X217 @ X216))) != X216) | ! [X218 : (term > $o),X219 : term,X220 : subst,X221 : term,X222 : (term > $o)] : (($true = ((X218 @ (sub @ X221 @ (push @ X219 @ X220))))) | (((X222 @ X221)) != $true)) | (pushprop_lem1_lthm != $true)) & (pushprop_lem1v2_gthm = $true) & (! [X223 : subst,X224 : term] : (((comp @ sh @ (push @ X224 @ X223))) = X223) | (axshiftcons != $true)) & ((axshiftcons = $true) | ? [X225 : subst,X226 : term] : (((comp @ sh @ (push @ X226 @ X225))) != X225)) & ((apinj1 = $true) | ? [X227 : term,X228 : term,X229 : term,X230 : term] : ((X229 != X230) & (((ap @ X229 @ X227)) = ((ap @ X230 @ X228))))) & (! [X231 : term,X232 : term,X233 : term,X234 : term] : ((X233 = X234) | (((ap @ X233 @ X231)) != ((ap @ X234 @ X232)))) | (apinj1 != $true)) & ((laminj = $true) | ? [X235 : term,X236 : term] : ((X235 != X236) & (((lam @ X235)) = ((lam @ X236))))) & (! [X237 : term,X238 : term] : ((X237 = X238) | (((lam @ X237)) != ((lam @ X238)))) | (laminj != $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X239 : term,X240 : term,X241 : term,X242 : term] : ((X239 = X241) | (((ap @ X242 @ X239)) != ((ap @ X240 @ X241)))) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X243 : term,X244 : term,X245 : term,X246 : term] : ((X243 != X245) & (((ap @ X244 @ X245)) = ((ap @ X246 @ X243))))) & (lamnotap != $true) & ((induction2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (induction2_lthm != $true)) & (! [X247 : term,X248 : (term > $o),X249 : (subst > term > subst > $o),X250 : term] : (? [X251 : term] : (((X248 @ X251)) != ((X249 @ id @ X251 @ id))) | ? [X252 : term,X253 : term] : (($true = ((X249 @ id @ X252 @ id))) & ($true = ((X249 @ id @ X253 @ id))) & ($true != ((X249 @ id @ (ap @ (sub @ X253 @ id) @ X252) @ id)))) | ? [X254 : subst,X255 : subst,X256 : term,X257 : subst] : (($true = ((X249 @ (comp @ X254 @ X255) @ (sub @ X256 @ X255) @ X257))) & (((X249 @ X254 @ X256 @ (comp @ X255 @ X257))) != $true)) | ($true != ((X248 @ X250))) | ($true = ((X248 @ (ap @ X247 @ X250)))) | ? [X258 : subst,X259 : subst,X260 : term,X261 : subst] : (($true != ((X249 @ (comp @ X261 @ X259) @ (sub @ X260 @ X259) @ X258))) & (((X249 @ X261 @ X260 @ (comp @ X259 @ X258))) = $true)) | ($true != ((X248 @ X247)))) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ? [X262 : term,X263 : (term > $o),X264 : (subst > term > subst > $o),X265 : term] : (! [X266 : term] : (((X263 @ X266)) = ((X264 @ id @ X266 @ id))) & ! [X267 : term,X268 : term] : (($true != ((X264 @ id @ X267 @ id))) | ($true != ((X264 @ id @ X268 @ id))) | ($true = ((X264 @ id @ (ap @ (sub @ X268 @ id) @ X267) @ id)))) & ! [X269 : subst,X270 : subst,X271 : term,X272 : subst] : (($true != ((X264 @ (comp @ X269 @ X270) @ (sub @ X271 @ X270) @ X272))) | ($true = ((X264 @ X269 @ X271 @ (comp @ X270 @ X272))))) & ($true = ((X263 @ X265))) & ($true != ((X263 @ (ap @ X262 @ X265)))) & ! [X273 : subst,X274 : subst,X275 : term,X276 : subst] : ((((X264 @ (comp @ X276 @ X274) @ (sub @ X275 @ X274) @ X273)) = $true) | ($true != ((X264 @ X276 @ X275 @ (comp @ X274 @ X273))))) & (((X263 @ X262)) = $true))) & ((! [X277 : subst] : (((comp @ X277 @ id)) = X277) & ! [X278 : subst] : (((comp @ id @ X278)) = X278)) | ? [X279 : subst] : (((comp @ X279 @ id)) != X279) | ? [X280 : subst] : (((comp @ id @ X280)) != X280) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | ((? [X281 : subst] : (((comp @ X281 @ id)) != X281) | ? [X282 : subst] : (((comp @ id @ X282)) != X282)) & ! [X283 : subst] : (((comp @ X283 @ id)) = X283) & ! [X284 : subst] : (((comp @ id @ X284)) = X284))) & (pushprop_lem3v2 = $true) & ((hoasinduction_lem3aa_lthm = $true) | ? [X285 : term,X286 : (subst > term > subst > $o)] : (! [X287 : (subst > term > term)] : (? [X288 : term] : ((((X286 @ id @ (X287 @ id @ X288) @ id)) != $true) & ($true = ((X286 @ id @ X288 @ id)))) | ? [X289 : subst,X290 : term,X291 : subst] : (((X287 @ (comp @ X291 @ X289) @ (sub @ X290 @ X289))) != ((sub @ (X287 @ X291 @ X290) @ X289))) | (((X286 @ id @ (lam @ (X287 @ sh @ one)) @ id)) = $true)) & (((X286 @ id @ (lam @ (sub @ X285 @ (push @ one @ sh))) @ id)) != $true) & ! [X292 : term] : (($true != ((X286 @ id @ X292 @ id))) | (((X286 @ id @ (sub @ X285 @ (push @ X292 @ id)) @ id)) = $true)))) & (! [X293 : term,X294 : (subst > term > subst > $o)] : (? [X295 : (subst > term > term)] : (! [X296 : term] : ((((X294 @ id @ (X295 @ id @ X296) @ id)) = $true) | ($true != ((X294 @ id @ X296 @ id)))) & ! [X297 : subst,X298 : term,X299 : subst] : (((X295 @ (comp @ X299 @ X297) @ (sub @ X298 @ X297))) = ((sub @ (X295 @ X299 @ X298) @ X297))) & (((X294 @ id @ (lam @ (X295 @ sh @ one)) @ id)) != $true)) | (((X294 @ id @ (lam @ (sub @ X293 @ (push @ one @ sh))) @ id)) = $true) | ? [X300 : term] : (($true = ((X294 @ id @ X300 @ id))) & (((X294 @ id @ (sub @ X293 @ (push @ X300 @ id)) @ id)) != $true))) | (hoasinduction_lem3aa_lthm != $true)) & (pushprop_lem0_gthm = $true) & (! [X301 : subst,X302 : (term > $o),X303 : term,X304 : (term > $o)] : ((((X304 @ X303)) != $true) | ($true = ((X302 @ one))) | ? [X305 : term] : (((X302 @ X305)) != ((X304 @ (sub @ X305 @ (push @ X303 @ X301)))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ? [X306 : subst,X307 : (term > $o),X308 : term,X309 : (term > $o)] : (($true = ((X309 @ X308))) & (((X307 @ one)) != $true) & ! [X310 : term] : (((X307 @ X310)) = ((X309 @ (sub @ X310 @ (push @ X308 @ X306))))))) & (hoasinduction_lem3b_gthm = $true) & (axapp = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (((var @ (d2term @ d_one))) != $true) & ! [X311 : d_term,X312 : d_term] : ((X311 = X312) | (((d2term @ X311)) != ((d2term @ X312)))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (induction2lem_gthm = $true) & ((induction2lem_lthm = $true) | (sP8 != $true)) & ((sP8 = $true) | (induction2lem_lthm != $true)) & (pushprop_lem2v2 = $true) & (! [X313 : term,X314 : (subst > term > subst > $o)] : (($true = ((X314 @ id @ (lam @ X313) @ id))) | ? [X315 : term] : ((((X314 @ id @ X315 @ id)) = $true) & ($true != ((X314 @ id @ (sub @ X313 @ (push @ X315 @ id)) @ id)))) | ? [X316 : (subst > term > term)] : (! [X317 : subst,X318 : subst,X319 : term] : (((sub @ (X316 @ X318 @ X319) @ X317)) = ((X316 @ (comp @ X318 @ X317) @ (sub @ X319 @ X317)))) & (((X314 @ id @ (lam @ (X316 @ sh @ one)) @ id)) != $true) & ! [X320 : term] : ((((X314 @ id @ (X316 @ id @ X320) @ id)) = $true) | ($true != ((X314 @ id @ X320 @ id)))))) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ? [X321 : term,X322 : (subst > term > subst > $o)] : ((((X322 @ id @ (lam @ X321) @ id)) != $true) & ! [X323 : term] : (($true != ((X322 @ id @ X323 @ id))) | ($true = ((X322 @ id @ (sub @ X321 @ (push @ X323 @ id)) @ id)))) & ! [X324 : (subst > term > term)] : (? [X325 : subst,X326 : subst,X327 : term] : (((X324 @ (comp @ X326 @ X325) @ (sub @ X327 @ X325))) != ((sub @ (X324 @ X326 @ X327) @ X325))) | (((X322 @ id @ (lam @ (X324 @ sh @ one)) @ id)) = $true) | ? [X328 : term] : (($true != ((X322 @ id @ (X324 @ id @ X328) @ id))) & ($true = ((X322 @ id @ X328 @ id))))))) & (hoaslaminj_gthm = $true) & (? [X329 : term,X330 : term,X331 : term,X332 : term] : ((X330 != X331) & (((ap @ X331 @ X329)) = ((ap @ X330 @ X332)))) | ? [X333 : term] : (((sub @ X333 @ id)) != X333) | ! [X334 : term,X335 : term,X336 : term,X337 : term] : ((((ap @ (sub @ X336 @ id) @ X335)) != ((ap @ (sub @ X337 @ id) @ X334))) | (X336 = X337)) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X338 : term,X339 : term,X340 : term,X341 : term] : ((X339 = X340) | (((ap @ X340 @ X338)) != ((ap @ X339 @ X341)))) & ! [X342 : term] : (((sub @ X342 @ id)) = X342) & ? [X343 : term,X344 : term,X345 : term,X346 : term] : ((((ap @ (sub @ X346 @ id) @ X343)) = ((ap @ (sub @ X345 @ id) @ X344))) & (X345 != X346)))) & (hoasinduction_lem1 = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar_lthm = $true) & (((d2term @ d_one)) = one) & ((hoasinduction_lem3v2a = $true) | ? [X347 : (subst > term > subst > $o),X348 : (term > $o),X349 : term] : (! [X350 : term] : (($true != ((X348 @ X350))) | ($true = ((X348 @ (sub @ X349 @ (push @ X350 @ id)))))) & (((X348 @ (lam @ X349))) != $true) & ! [X351 : (subst > term > term)] : ((((X347 @ id @ (lam @ (X351 @ sh @ one)) @ id)) = $true) | ? [X352 : term] : ((((X347 @ id @ (X351 @ id @ X352) @ id)) != $true) & ($true = ((X347 @ id @ X352 @ id)))) | ? [X353 : subst,X354 : term,X355 : subst] : (((X351 @ (comp @ X353 @ X355) @ (sub @ X354 @ X355))) != ((sub @ (X351 @ X353 @ X354) @ X355)))) & ! [X356 : term] : (((X347 @ id @ X356 @ id)) = ((X348 @ X356))))) & (! [X357 : (subst > term > subst > $o),X358 : (term > $o),X359 : term] : (? [X360 : term] : ((((X358 @ X360)) = $true) & (((X358 @ (sub @ X359 @ (push @ X360 @ id)))) != $true)) | (((X358 @ (lam @ X359))) = $true) | ? [X361 : (subst > term > term)] : (($true != ((X357 @ id @ (lam @ (X361 @ sh @ one)) @ id))) & ! [X362 : term] : ((((X357 @ id @ (X361 @ id @ X362) @ id)) = $true) | (((X357 @ id @ X362 @ id)) != $true)) & ! [X363 : subst,X364 : term,X365 : subst] : (((sub @ (X361 @ X363 @ X364) @ X365)) = ((X361 @ (comp @ X363 @ X365) @ (sub @ X364 @ X365))))) | ? [X366 : term] : (((X358 @ X366)) != ((X357 @ id @ X366 @ id)))) | (hoasinduction_lem3v2a != $true)) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (($true = sP7) | ? [X367 : term,X368 : (term > $o)] : (! [X369 : term,X370 : term] : ((((X368 @ X370)) != $true) | ($true = ((X368 @ (ap @ X369 @ X370)))) | (((X368 @ X369)) != $true)) & ! [X371 : term] : ((((X368 @ X371)) = $true) | (((var @ X371)) != $true)) & (((X368 @ X367)) != $true) & ! [X372 : term] : ((((X368 @ (lam @ X372))) = $true) | ? [X373 : term] : ((((X368 @ (sub @ X372 @ (push @ X373 @ id)))) != $true) & (((X368 @ X373)) = $true)))) | ? [X374 : term,X375 : (term > $o),X376 : (subst > term > subst > $o)] : (! [X377 : (subst > term > term)] : (? [X378 : subst,X379 : subst,X380 : term] : (((sub @ (X377 @ X379 @ X380) @ X378)) != ((X377 @ (comp @ X379 @ X378) @ (sub @ X380 @ X378)))) | ? [X381 : term] : ((((X376 @ id @ X381 @ id)) = $true) & ($true != ((X376 @ id @ (X377 @ id @ X381) @ id)))) | ($true = ((X376 @ id @ (lam @ (X377 @ sh @ one)) @ id)))) & ! [X382 : term] : (((X375 @ X382)) = ((X376 @ id @ X382 @ id))) & ! [X383 : term] : ((((X375 @ X383)) != $true) | (((X375 @ (sub @ X374 @ (push @ X383 @ id)))) = $true)) & (((X375 @ (lam @ X374))) != $true)) | ? [X384 : (subst > term > subst > $o)] : ! [X385 : (term > $o)] : ? [X386 : term] : (((X385 @ X386)) != ((X384 @ id @ X386 @ id))) | ? [X387 : term] : (((sub @ X387 @ id)) != X387) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP7) & ! [X388 : term,X389 : (term > $o)] : (? [X390 : term,X391 : term] : ((((X389 @ X391)) = $true) & ($true != ((X389 @ (ap @ X390 @ X391)))) & ($true = ((X389 @ X390)))) | ? [X392 : term] : ((((X389 @ X392)) != $true) & ($true = ((var @ X392)))) | (((X389 @ X388)) = $true) | ? [X393 : term] : (($true != ((X389 @ (lam @ X393)))) & ! [X394 : term] : (($true = ((X389 @ (sub @ X393 @ (push @ X394 @ id))))) | ($true != ((X389 @ X394)))))) & ! [X395 : term,X396 : (term > $o),X397 : (subst > term > subst > $o)] : (? [X398 : (subst > term > term)] : (! [X399 : subst,X400 : subst,X401 : term] : (((X398 @ (comp @ X400 @ X399) @ (sub @ X401 @ X399))) = ((sub @ (X398 @ X400 @ X401) @ X399))) & ! [X402 : term] : (($true != ((X397 @ id @ X402 @ id))) | ($true = ((X397 @ id @ (X398 @ id @ X402) @ id)))) & ($true != ((X397 @ id @ (lam @ (X398 @ sh @ one)) @ id)))) | ? [X403 : term] : (((X396 @ X403)) != ((X397 @ id @ X403 @ id))) | ? [X404 : term] : (($true = ((X396 @ X404))) & ($true != ((X396 @ (sub @ X395 @ (push @ X404 @ id)))))) | (((X396 @ (lam @ X395))) = $true)) & ! [X405 : (subst > term > subst > $o)] : ? [X406 : (term > $o)] : ! [X407 : term] : (((X405 @ id @ X407 @ id)) = ((X406 @ X407))) & ! [X408 : term] : (((sub @ X408 @ id)) = X408))) & (axvarshift = $true) & (! [X409 : term,X410 : (subst > term > subst > $o)] : (? [X411 : term] : ((((X410 @ id @ X411 @ id)) = $true) & ($true != ((X410 @ id @ (sub @ X409 @ (push @ X411 @ id)) @ id)))) | ? [X412 : (subst > term > term)] : (! [X413 : term] : (($true != ((X410 @ id @ X413 @ id))) | ($true = ((X410 @ id @ (X412 @ id @ X413) @ id)))) & ($true != ((X410 @ id @ (lam @ (X412 @ sh @ one)) @ id))) & ! [X414 : subst,X415 : subst,X416 : term] : (((X412 @ (comp @ X415 @ X414) @ (sub @ X416 @ X414))) = ((sub @ (X412 @ X415 @ X416) @ X414)))) | ($true = ((X410 @ id @ (lam @ (sub @ X409 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ? [X417 : term,X418 : (subst > term > subst > $o)] : (! [X419 : term] : ((((X418 @ id @ X419 @ id)) != $true) | ($true = ((X418 @ id @ (sub @ X417 @ (push @ X419 @ id)) @ id)))) & ! [X420 : (subst > term > term)] : (? [X421 : term] : (($true = ((X418 @ id @ X421 @ id))) & ($true != ((X418 @ id @ (X420 @ id @ X421) @ id)))) | ($true = ((X418 @ id @ (lam @ (X420 @ sh @ one)) @ id))) | ? [X422 : subst,X423 : subst,X424 : term] : (((sub @ (X420 @ X423 @ X424) @ X422)) != ((X420 @ (comp @ X423 @ X422) @ (sub @ X424 @ X422))))) & ($true != ((X418 @ id @ (lam @ (sub @ X417 @ (push @ one @ sh))) @ id))))) & ((induction2lem = $true) | ? [X425 : subst,X426 : (term > $o),X427 : term] : (! [X428 : term] : (? [X429 : term] : (($true != ((X426 @ (sub @ X428 @ (push @ X429 @ id))))) & (((X426 @ X429)) = $true)) | (((X426 @ (lam @ X428))) = $true)) & ($true != ((X426 @ (sub @ X427 @ X425)))) & ! [X430 : term,X431 : term] : (($true != ((X426 @ X430))) | (((X426 @ X431)) != $true) | ($true = ((X426 @ (ap @ X430 @ X431))))) & ! [X432 : term] : (($true = ((X426 @ (sub @ X432 @ X425)))) | ($true != ((var @ X432)))))) & (! [X433 : subst,X434 : (term > $o),X435 : term] : (? [X436 : term] : (! [X437 : term] : (($true = ((X434 @ (sub @ X436 @ (push @ X437 @ id))))) | (((X434 @ X437)) != $true)) & ($true != ((X434 @ (lam @ X436))))) | (((X434 @ (sub @ X435 @ X433))) = $true) | ? [X438 : term,X439 : term] : (($true = ((X434 @ X438))) & (((X434 @ X439)) = $true) & ($true != ((X434 @ (ap @ X438 @ X439))))) | ? [X440 : term] : (($true != ((X434 @ (sub @ X440 @ X433)))) & ($true = ((var @ X440))))) | (induction2lem != $true)) & ((hoasinduction = $true) | ? [X441 : (subst > term > subst > $o),X442 : term] : (! [X443 : (subst > term > term)] : ((((X441 @ id @ (lam @ (X443 @ sh @ one)) @ id)) = $true) | ? [X444 : subst,X445 : subst,X446 : term] : (((X443 @ (comp @ X445 @ X444) @ (sub @ X446 @ X444))) != ((sub @ (X443 @ X445 @ X446) @ X444))) | ? [X447 : term] : ((((X441 @ id @ (X443 @ id @ X447) @ id)) != $true) & ($true = ((X441 @ id @ X447 @ id))))) & ($true != ((sP6 @ X441))) & ! [X448 : term,X449 : subst,X450 : subst,X451 : subst] : (($true = ((X441 @ (comp @ X451 @ X450) @ (sub @ X448 @ X450) @ X449))) | ($true != ((X441 @ X451 @ X448 @ (comp @ X450 @ X449))))) & ! [X452 : term,X453 : subst,X454 : subst,X455 : subst] : ((((X441 @ X454 @ X452 @ (comp @ X453 @ X455))) = $true) | ($true != ((X441 @ (comp @ X454 @ X453) @ (sub @ X452 @ X453) @ X455)))) & ! [X456 : term] : ((((X441 @ id @ X456 @ id)) = $true) | ($true != ((var @ (sub @ X456 @ id))))) & ($true != ((X441 @ id @ X442 @ id))))) & (! [X457 : (subst > term > subst > $o),X458 : term] : (? [X459 : (subst > term > term)] : (($true != ((X457 @ id @ (lam @ (X459 @ sh @ one)) @ id))) & ! [X460 : subst,X461 : subst,X462 : term] : (((X459 @ (comp @ X461 @ X460) @ (sub @ X462 @ X460))) = ((sub @ (X459 @ X461 @ X462) @ X460))) & ! [X463 : term] : (($true = ((X457 @ id @ (X459 @ id @ X463) @ id))) | ($true != ((X457 @ id @ X463 @ id))))) | ($true = ((sP6 @ X457))) | ? [X464 : term,X465 : subst,X466 : subst,X467 : subst] : (($true != ((X457 @ (comp @ X467 @ X466) @ (sub @ X464 @ X466) @ X465))) & (((X457 @ X467 @ X464 @ (comp @ X466 @ X465))) = $true)) | ? [X468 : term,X469 : subst,X470 : subst,X471 : subst] : ((((X457 @ X470 @ X468 @ (comp @ X469 @ X471))) != $true) & ($true = ((X457 @ (comp @ X470 @ X469) @ (sub @ X468 @ X469) @ X471)))) | ? [X472 : term] : (($true != ((X457 @ id @ X472 @ id))) & ($true = ((var @ (sub @ X472 @ id))))) | ($true = ((X457 @ id @ X458 @ id)))) | (hoasinduction != $true)) & (pushprop = $true) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (! [X473 : (subst > term > subst > $o),X474 : term] : (? [X475 : term] : ((((X473 @ id @ X475 @ id)) = $true) & ($true != ((X473 @ id @ (sub @ X474 @ (push @ X475 @ id)) @ id)))) | ? [X476 : subst,X477 : subst,X478 : term,X479 : subst] : (($true = ((X473 @ (comp @ X477 @ X479) @ (sub @ X478 @ X479) @ X476))) & ($true != ((X473 @ X477 @ X478 @ (comp @ X479 @ X476))))) | ? [X480 : (subst > term > term)] : (! [X481 : term] : (($true != ((X473 @ id @ X481 @ id))) | ($true = ((X473 @ id @ (X480 @ id @ X481) @ id)))) & ! [X482 : subst,X483 : subst,X484 : term] : (((sub @ (X480 @ X482 @ X484) @ X483)) = ((X480 @ (comp @ X482 @ X483) @ (sub @ X484 @ X483)))) & (((X473 @ id @ (lam @ (X480 @ sh @ one)) @ id)) != $true)) | (((X473 @ id @ (lam @ X474) @ id)) = $true) | ? [X485 : subst,X486 : subst,X487 : subst,X488 : term] : ((((X473 @ (comp @ X485 @ X487) @ (sub @ X488 @ X487) @ X486)) != $true) & ($true = ((X473 @ X485 @ X488 @ (comp @ X487 @ X486)))))) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | ? [X489 : (subst > term > subst > $o),X490 : term] : (! [X491 : term] : ((((X489 @ id @ X491 @ id)) != $true) | ($true = ((X489 @ id @ (sub @ X490 @ (push @ X491 @ id)) @ id)))) & ! [X492 : subst,X493 : subst,X494 : term,X495 : subst] : (($true != ((X489 @ (comp @ X493 @ X495) @ (sub @ X494 @ X495) @ X492))) | (((X489 @ X493 @ X494 @ (comp @ X495 @ X492))) = $true)) & ! [X496 : (subst > term > term)] : (? [X497 : term] : (($true = ((X489 @ id @ X497 @ id))) & ($true != ((X489 @ id @ (X496 @ id @ X497) @ id)))) | ? [X498 : subst,X499 : subst,X500 : term] : (((X496 @ (comp @ X498 @ X499) @ (sub @ X500 @ X499))) != ((sub @ (X496 @ X498 @ X500) @ X499))) | ($true = ((X489 @ id @ (lam @ (X496 @ sh @ one)) @ id)))) & ($true != ((X489 @ id @ (lam @ X490) @ id))) & ! [X501 : subst,X502 : subst,X503 : subst,X504 : term] : (($true = ((X489 @ (comp @ X501 @ X503) @ (sub @ X504 @ X503) @ X502))) | ($true != ((X489 @ X501 @ X504 @ (comp @ X503 @ X502))))))) & (hoaslamnotvar_gthm = $true) & (! [X505 : term] : (((sub @ X505 @ id)) = X505) | (axvarid != $true)) & ((axvarid = $true) | ? [X506 : term] : (((sub @ X506 @ id)) != X506)) & (! [X507 : subst] : (((comp @ id @ X507)) = X507) | (axidl != $true)) & ((axidl = $true) | ? [X508 : subst] : (((comp @ id @ X508)) != X508)) & (pushprop_gthm = $true) & ((hoasinduction_lem0 = $true) | ? [X509 : (subst > term > subst > $o)] : ! [X510 : (term > $o)] : ? [X511 : term] : (((X509 @ id @ X511 @ id)) != ((X510 @ X511)))) & (! [X512 : (subst > term > subst > $o)] : ? [X513 : (term > $o)] : ! [X514 : term] : (((X513 @ X514)) = ((X512 @ id @ X514 @ id))) | (hoasinduction_lem0 != $true)) & (! [X515 : term] : ? [X516 : (subst > term > term)] : (((X516 @ sh @ one)) = ((sub @ X515 @ (push @ one @ sh)))) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ? [X517 : term] : ! [X518 : (subst > term > term)] : (((sub @ X517 @ (push @ one @ sh))) != ((X518 @ sh @ one)))) & (! [X519 : (term > $o),X520 : term,X521 : (term > $o),X522 : term,X523 : subst] : (($true != ((X519 @ X522))) | ($true = ((X521 @ (sub @ X522 @ (push @ X520 @ X523)))))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X524 : (term > $o),X525 : term,X526 : (term > $o),X527 : term,X528 : subst] : (($true = ((X524 @ X527))) & (((X526 @ (sub @ X527 @ (push @ X525 @ X528)))) != $true))) & (! [X529 : term,X530 : term,X531 : term,X532 : term] : ((X529 = X532) | (((ap @ (sub @ X531 @ id) @ X532)) != ((ap @ (sub @ X530 @ id) @ X529)))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ? [X533 : term,X534 : term,X535 : term,X536 : term] : ((X533 != X536) & (((ap @ (sub @ X534 @ id) @ X533)) = ((ap @ (sub @ X535 @ id) @ X536))))) & (! [X537 : (term > $o),X538 : term] : (($true = ((X537 @ X538))) | ? [X539 : term,X540 : term] : (($true = ((X537 @ X539))) & ($true = ((X537 @ X540))) & ($true != ((X537 @ (ap @ X539 @ X540))))) | ? [X541 : term] : ((((X537 @ X541)) = $true) & ($true != ((X537 @ (lam @ X541))))) | ? [X542 : term] : (($true != ((X537 @ X542))) & ($true = ((var @ X542))))) | (induction != $true)) & ((induction = $true) | ? [X543 : (term > $o),X544 : term] : (($true != ((X543 @ X544))) & ! [X545 : term,X546 : term] : ((((X543 @ X545)) != $true) | ($true != ((X543 @ X546))) | ($true = ((X543 @ (ap @ X545 @ X546))))) & ! [X547 : term] : (($true != ((X543 @ X547))) | (((X543 @ (lam @ X547))) = $true)) & ! [X548 : term] : (($true = ((X543 @ X548))) | ($true != ((var @ X548)))))) & (termmset_gthm = $true) & ((substmonoid = $true) | ? [X549 : subst] : (((comp @ X549 @ id)) != X549) | ? [X550 : subst] : (((comp @ id @ X550)) != X550)) & ((! [X551 : subst] : (((comp @ X551 @ id)) = X551) & ! [X552 : subst] : (((comp @ id @ X552)) = X552)) | (substmonoid != $true)) & (hoasinduction_lem1v2 = $true) & (axmap = $true) & (! [X553 : (subst > term > term),X554 : (subst > term > term),X555 : subst,X556 : term] : (? [X557 : subst,X558 : term,X559 : subst] : (((sub @ (X554 @ X559 @ X558) @ X557)) != ((X554 @ (comp @ X559 @ X557) @ (sub @ X558 @ X557)))) | ? [X560 : subst,X561 : term,X562 : subst] : (((sub @ (X553 @ X560 @ X561) @ X562)) != ((X553 @ (comp @ X560 @ X562) @ (sub @ X561 @ X562)))) | (((lam @ (X554 @ sh @ one))) != ((lam @ (X553 @ sh @ one)))) | (((X554 @ X555 @ X556)) = ((X553 @ X555 @ X556)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X563 : (subst > term > term),X564 : (subst > term > term),X565 : subst,X566 : term] : (! [X567 : subst,X568 : term,X569 : subst] : (((sub @ (X564 @ X569 @ X568) @ X567)) = ((X564 @ (comp @ X569 @ X567) @ (sub @ X568 @ X567)))) & ! [X570 : subst,X571 : term,X572 : subst] : (((X563 @ (comp @ X570 @ X572) @ (sub @ X571 @ X572))) = ((sub @ (X563 @ X570 @ X571) @ X572))) & (((lam @ (X563 @ sh @ one))) = ((lam @ (X564 @ sh @ one)))) & (((X564 @ X565 @ X566)) != ((X563 @ X565 @ X566))))) & (? [X573 : term] : (((sub @ X573 @ id)) != X573) | ! [X574 : term] : (((sub @ X574 @ id)) = X574) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X575 : term] : (((sub @ X575 @ id)) = X575) & ? [X576 : term] : (((sub @ X576 @ id)) != X576))) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem3v2_f = $true) | ? [X577 : term] : ! [X578 : (subst > term > term)] : ? [X579 : subst,X580 : term] : (((sub @ X577 @ (push @ X580 @ X579))) != ((X578 @ X579 @ X580)))) & (! [X581 : term] : ? [X582 : (subst > term > term)] : ! [X583 : subst,X584 : term] : (((sub @ X581 @ (push @ X584 @ X583))) = ((X582 @ X583 @ X584))) | (hoasinduction_lem3v2_f != $true)) & (apnotvar = $true) & ((axscons = $true) | ? [X585 : subst] : (((push @ (sub @ one @ X585) @ (comp @ sh @ X585))) != X585)) & (! [X586 : subst] : (((push @ (sub @ one @ X586) @ (comp @ sh @ X586))) = X586) | (axscons != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axabs = $true) & ((hoasinduction_lem2 = $true) | ? [X587 : term,X588 : term,X589 : (subst > term > subst > $o)] : (! [X590 : term,X591 : term] : (($true != ((X589 @ id @ X591 @ id))) | (((X589 @ id @ X590 @ id)) != $true) | ($true = ((X589 @ id @ (ap @ (sub @ X591 @ id) @ X590) @ id)))) & (((X589 @ id @ (ap @ X587 @ X588) @ id)) != $true) & ! [X592 : term,X593 : subst,X594 : subst,X595 : subst] : ((((X589 @ (comp @ X595 @ X593) @ (sub @ X592 @ X593) @ X594)) = $true) | (((X589 @ X595 @ X592 @ (comp @ X593 @ X594))) != $true)) & ! [X596 : subst,X597 : term,X598 : subst,X599 : subst] : ((((X589 @ (comp @ X598 @ X599) @ (sub @ X597 @ X599) @ X596)) != $true) | ($true = ((X589 @ X598 @ X597 @ (comp @ X599 @ X596))))) & (((X589 @ id @ X587 @ id)) = $true) & ($true = ((X589 @ id @ X588 @ id))))) & (! [X600 : term,X601 : term,X602 : (subst > term > subst > $o)] : (? [X603 : term,X604 : term] : ((((X602 @ id @ X604 @ id)) = $true) & (((X602 @ id @ X603 @ id)) = $true) & ($true != ((X602 @ id @ (ap @ (sub @ X604 @ id) @ X603) @ id)))) | (((X602 @ id @ (ap @ X600 @ X601) @ id)) = $true) | ? [X605 : term,X606 : subst,X607 : subst,X608 : subst] : ((((X602 @ (comp @ X608 @ X606) @ (sub @ X605 @ X606) @ X607)) != $true) & (((X602 @ X608 @ X605 @ (comp @ X606 @ X607))) = $true)) | ? [X609 : subst,X610 : term,X611 : subst,X612 : subst] : (($true = ((X602 @ (comp @ X611 @ X612) @ (sub @ X610 @ X612) @ X609))) & ($true != ((X602 @ X611 @ X610 @ (comp @ X612 @ X609))))) | ($true != ((X602 @ id @ X600 @ id))) | (((X602 @ id @ X601 @ id)) != $true)) | (hoasinduction_lem2 != $true)) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3aaa = $true) | ? [X613 : term,X614 : (subst > term > subst > $o)] : (($true != ((X614 @ id @ (lam @ (sub @ X613 @ (push @ one @ sh))) @ id))) & ! [X615 : term] : ((((X614 @ id @ X615 @ id)) != $true) | ($true = ((X614 @ id @ (sub @ X613 @ (push @ X615 @ id)) @ id)))) & ! [X616 : (subst > term > term),X617 : term] : (? [X618 : term,X619 : subst,X620 : subst] : (((sub @ X617 @ (push @ (sub @ X618 @ X620) @ (comp @ X619 @ X620)))) != ((X616 @ (comp @ X619 @ X620) @ (sub @ X618 @ X620)))) | ? [X621 : term] : (($true != ((X614 @ id @ (X616 @ id @ X621) @ id))) & (((X614 @ id @ X621 @ id)) = $true)) | (((X614 @ id @ (lam @ (X616 @ sh @ one)) @ id)) = $true) | ? [X622 : term,X623 : subst,X624 : subst] : (((sub @ (sub @ X617 @ (push @ X622 @ X623)) @ X624)) != ((sub @ (X616 @ X623 @ X622) @ X624)))))) & (! [X625 : term,X626 : (subst > term > subst > $o)] : ((((X626 @ id @ (lam @ (sub @ X625 @ (push @ one @ sh))) @ id)) = $true) | ? [X627 : term] : ((((X626 @ id @ X627 @ id)) = $true) & (((X626 @ id @ (sub @ X625 @ (push @ X627 @ id)) @ id)) != $true)) | ? [X628 : (subst > term > term),X629 : term] : (! [X630 : term,X631 : subst,X632 : subst] : (((X628 @ (comp @ X631 @ X632) @ (sub @ X630 @ X632))) = ((sub @ X629 @ (push @ (sub @ X630 @ X632) @ (comp @ X631 @ X632))))) & ! [X633 : term] : (($true = ((X626 @ id @ (X628 @ id @ X633) @ id))) | ($true != ((X626 @ id @ X633 @ id)))) & (((X626 @ id @ (lam @ (X628 @ sh @ one)) @ id)) != $true) & ! [X634 : term,X635 : subst,X636 : subst] : (((sub @ (X628 @ X635 @ X634) @ X636)) = ((sub @ (sub @ X629 @ (push @ X634 @ X635)) @ X636))))) | (hoasinduction_lem3aaa != $true)) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (axclos = $true) & (! [X637 : term,X638 : term] : ((X637 = X638) | (((sub @ X638 @ sh)) != ((sub @ X637 @ sh)))) | (shinj != $true)) & ((shinj = $true) | ? [X639 : term,X640 : term] : ((X639 != X640) & (((sub @ X639 @ sh)) = ((sub @ X640 @ sh))))) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (hoasinduction_lem1_lthm = $true) & (? [X641 : term] : (((sub @ X641 @ id)) != X641) | ($true = sP5) | ? [X642 : (subst > term > subst > $o),X643 : term] : (! [X644 : (subst > term > term)] : (? [X645 : subst,X646 : subst,X647 : term] : (((X644 @ (comp @ X645 @ X646) @ (sub @ X647 @ X646))) != ((sub @ (X644 @ X645 @ X647) @ X646))) | ? [X648 : term] : (($true = ((X642 @ id @ X648 @ id))) & ($true != ((X642 @ id @ (X644 @ id @ X648) @ id)))) | ($true = ((X642 @ id @ (lam @ (X644 @ sh @ one)) @ id)))) & ! [X649 : term] : ((((X642 @ id @ X649 @ id)) != $true) | ($true = ((X642 @ id @ (sub @ X643 @ (push @ X649 @ id)) @ id)))) & ($true != ((X642 @ id @ (lam @ (sub @ X643 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X650 : term] : (((sub @ X650 @ id)) = X650) & ($true != sP5) & ! [X651 : (subst > term > subst > $o),X652 : term] : (? [X653 : (subst > term > term)] : (! [X654 : subst,X655 : subst,X656 : term] : (((X653 @ (comp @ X654 @ X655) @ (sub @ X656 @ X655))) = ((sub @ (X653 @ X654 @ X656) @ X655))) & ! [X657 : term] : (($true != ((X651 @ id @ X657 @ id))) | ($true = ((X651 @ id @ (X653 @ id @ X657) @ id)))) & ($true != ((X651 @ id @ (lam @ (X653 @ sh @ one)) @ id)))) | ? [X658 : term] : (($true = ((X651 @ id @ X658 @ id))) & ($true != ((X651 @ id @ (sub @ X652 @ (push @ X658 @ id)) @ id)))) | ($true = ((X651 @ id @ (lam @ (sub @ X652 @ (push @ one @ sh))) @ id)))))) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ! [X659 : d_term] : (d_one = X659) & ((hoasinduction_lem3a_lthm = $true) | (? [X660 : term,X661 : (subst > term > subst > $o)] : (! [X662 : term] : (($true = ((X661 @ id @ (sub @ X660 @ (push @ X662 @ id)) @ id))) | (((X661 @ id @ X662 @ id)) != $true)) & ($true != ((X661 @ id @ (lam @ X660) @ id))) & ! [X663 : (subst > term > term)] : (($true = ((X661 @ id @ (lam @ (X663 @ sh @ one)) @ id))) | ? [X664 : term] : ((((X661 @ id @ (X663 @ id @ X664) @ id)) != $true) & ($true = ((X661 @ id @ X664 @ id)))) | ? [X665 : subst,X666 : subst,X667 : term] : (((sub @ (X663 @ X666 @ X667) @ X665)) != ((X663 @ (comp @ X666 @ X665) @ (sub @ X667 @ X665)))))) & ! [X668 : term] : (((sub @ X668 @ id)) = X668) & ! [X669 : (subst > term > subst > $o),X670 : term] : (? [X671 : (subst > term > term)] : (($true != ((X669 @ id @ (lam @ (X671 @ sh @ one)) @ id))) & ! [X672 : term] : ((((X669 @ id @ X672 @ id)) != $true) | ($true = ((X669 @ id @ (X671 @ id @ X672) @ id)))) & ! [X673 : term,X674 : subst,X675 : subst] : (((X671 @ (comp @ X675 @ X674) @ (sub @ X673 @ X674))) = ((sub @ (X671 @ X675 @ X673) @ X674)))) | (((X669 @ id @ (lam @ (sub @ X670 @ (push @ one @ sh))) @ id)) = $true) | ? [X676 : term] : (($true = ((X669 @ id @ X676 @ id))) & (((X669 @ id @ (sub @ X670 @ (push @ X676 @ id)) @ id)) != $true))))) & (! [X677 : term,X678 : (subst > term > subst > $o)] : (? [X679 : term] : (($true != ((X678 @ id @ (sub @ X677 @ (push @ X679 @ id)) @ id))) & ($true = ((X678 @ id @ X679 @ id)))) | ($true = ((X678 @ id @ (lam @ X677) @ id))) | ? [X680 : (subst > term > term)] : (($true != ((X678 @ id @ (lam @ (X680 @ sh @ one)) @ id))) & ! [X681 : term] : (($true = ((X678 @ id @ (X680 @ id @ X681) @ id))) | ($true != ((X678 @ id @ X681 @ id)))) & ! [X682 : subst,X683 : subst,X684 : term] : (((sub @ (X680 @ X683 @ X684) @ X682)) = ((X680 @ (comp @ X683 @ X682) @ (sub @ X684 @ X682)))))) | ? [X685 : term] : (((sub @ X685 @ id)) != X685) | ? [X686 : (subst > term > subst > $o),X687 : term] : (! [X688 : (subst > term > term)] : ((((X686 @ id @ (lam @ (X688 @ sh @ one)) @ id)) = $true) | ? [X689 : term] : (($true = ((X686 @ id @ X689 @ id))) & ($true != ((X686 @ id @ (X688 @ id @ X689) @ id)))) | ? [X690 : term,X691 : subst,X692 : subst] : (((sub @ (X688 @ X692 @ X690) @ X691)) != ((X688 @ (comp @ X692 @ X691) @ (sub @ X690 @ X691))))) & ($true != ((X686 @ id @ (lam @ (sub @ X687 @ (push @ one @ sh))) @ id))) & ! [X693 : term] : (($true != ((X686 @ id @ X693 @ id))) | (((X686 @ id @ (sub @ X687 @ (push @ X693 @ id)) @ id)) = $true))) | (hoasinduction_lem3a_lthm != $true)) & (! [X694 : subst,X695 : term] : (((sub @ one @ (push @ X695 @ X694))) = X695) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X696 : subst,X697 : term] : (((sub @ one @ (push @ X697 @ X696))) != X697)) & (hoaslamnotvar = $true) & (hoasinduction_lem3_gthm = $true) & ((hoasapinj2_lthm = $true) | (! [X698 : term,X699 : term,X700 : term,X701 : term] : ((X698 = X701) | (((ap @ X700 @ X698)) != ((ap @ X699 @ X701)))) & ? [X702 : term,X703 : term,X704 : term,X705 : term] : ((X702 != X705) & (((ap @ (sub @ X704 @ id) @ X702)) = ((ap @ (sub @ X703 @ id) @ X705)))))) & (? [X706 : term,X707 : term,X708 : term,X709 : term] : ((X706 != X709) & (((ap @ X707 @ X709)) = ((ap @ X708 @ X706)))) | ! [X710 : term,X711 : term,X712 : term,X713 : term] : ((X710 = X713) | (((ap @ (sub @ X711 @ id) @ X713)) != ((ap @ (sub @ X712 @ id) @ X710)))) | (hoasapinj2_lthm != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X714 : (term > $o),X715 : term,X716 : (subst > term > subst > $o)] : (($true = ((X714 @ (lam @ X715)))) | ? [X717 : term] : ((((X714 @ (sub @ X715 @ (push @ X717 @ id)))) != $true) & ($true = ((X714 @ X717)))) | ? [X718 : (subst > term > term)] : (! [X719 : term] : (($true != ((X716 @ id @ X719 @ id))) | ($true = ((X716 @ id @ (X718 @ id @ X719) @ id)))) & ($true != ((X716 @ id @ (lam @ (X718 @ sh @ one)) @ id))) & ! [X720 : subst,X721 : subst,X722 : term] : (((sub @ (X718 @ X720 @ X722) @ X721)) = ((X718 @ (comp @ X720 @ X721) @ (sub @ X722 @ X721))))) | ? [X723 : term] : (((X714 @ X723)) != ((X716 @ id @ X723 @ id)))) & ! [X724 : term,X725 : (term > $o)] : (? [X726 : term,X727 : term] : ((((X725 @ X727)) = $true) & ($true != ((X725 @ (ap @ X727 @ X726)))) & ($true = ((X725 @ X726)))) | ? [X728 : term] : ((((X725 @ X728)) != $true) & ($true = ((var @ X728)))) | ? [X729 : term] : ((((X725 @ (lam @ X729))) != $true) & ! [X730 : term] : (($true = ((X725 @ (sub @ X729 @ (push @ X730 @ id))))) | (((X725 @ X730)) != $true))) | (((X725 @ X724)) = $true)) & ($true != sP4) & ! [X731 : (subst > term > subst > $o)] : ? [X732 : (term > $o)] : ! [X733 : term] : (((X731 @ id @ X733 @ id)) = ((X732 @ X733))) & ! [X734 : term] : (((sub @ X734 @ id)) = X734))) & (? [X735 : (term > $o),X736 : term,X737 : (subst > term > subst > $o)] : ((((X735 @ (lam @ X736))) != $true) & ! [X738 : term] : (($true = ((X735 @ (sub @ X736 @ (push @ X738 @ id))))) | (((X735 @ X738)) != $true)) & ! [X739 : (subst > term > term)] : (? [X740 : term] : (($true = ((X737 @ id @ X740 @ id))) & ($true != ((X737 @ id @ (X739 @ id @ X740) @ id)))) | (((X737 @ id @ (lam @ (X739 @ sh @ one)) @ id)) = $true) | ? [X741 : subst,X742 : subst,X743 : term] : (((X739 @ (comp @ X741 @ X742) @ (sub @ X743 @ X742))) != ((sub @ (X739 @ X741 @ X743) @ X742)))) & ! [X744 : term] : (((X735 @ X744)) = ((X737 @ id @ X744 @ id)))) | ? [X745 : term,X746 : (term > $o)] : (! [X747 : term,X748 : term] : (($true != ((X746 @ X748))) | ($true = ((X746 @ (ap @ X748 @ X747)))) | (((X746 @ X747)) != $true)) & ! [X749 : term] : (($true = ((X746 @ X749))) | (((var @ X749)) != $true)) & ! [X750 : term] : (($true = ((X746 @ (lam @ X750)))) | ? [X751 : term] : (($true != ((X746 @ (sub @ X750 @ (push @ X751 @ id))))) & (((X746 @ X751)) = $true))) & (((X746 @ X745)) != $true)) | ($true = sP4) | ? [X752 : (subst > term > subst > $o)] : ! [X753 : (term > $o)] : ? [X754 : term] : (((X753 @ X754)) != ((X752 @ id @ X754 @ id))) | ? [X755 : term] : (((sub @ X755 @ id)) != X755) | (hoasinduction_lthm_3 != $true)) & (substmonoid_gthm = $true) & (! [X756 : term] : ? [X757 : (subst > term > term)] : ! [X758 : term,X759 : subst] : (((sub @ X756 @ (push @ X758 @ X759))) = ((X757 @ X759 @ X758))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X760 : term] : ! [X761 : (subst > term > term)] : ? [X762 : term,X763 : subst] : (((sub @ X760 @ (push @ X762 @ X763))) != ((X761 @ X763 @ X762)))) & (axassoc = $true) & (! [X764 : subst,X765 : (term > $o),X766 : term] : ? [X767 : (term > $o)] : ! [X768 : term] : (((X765 @ (sub @ X768 @ (push @ X766 @ X764)))) = ((X767 @ X768))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X769 : subst,X770 : (term > $o),X771 : term] : ! [X772 : (term > $o)] : ? [X773 : term] : (((X770 @ (sub @ X773 @ (push @ X771 @ X769)))) != ((X772 @ X773)))) & (! [X774 : term,X775 : term,X776 : term,X777 : term] : ((((ap @ (sub @ X775 @ id) @ X776)) != ((ap @ (sub @ X774 @ id) @ X777))) | (X774 = X775)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X778 : term,X779 : term,X780 : term,X781 : term] : ((((ap @ (sub @ X778 @ id) @ X781)) = ((ap @ (sub @ X779 @ id) @ X780))) & (X778 != X779))) & (hoasapnotvar = $true) & ((hoasinduction_lthm = $true) | (! [X782 : term,X783 : (subst > term > subst > $o),X784 : term] : (? [X785 : term,X786 : subst,X787 : subst,X788 : subst] : ((((X783 @ (comp @ X786 @ X787) @ (sub @ X785 @ X787) @ X788)) = $true) & ($true != ((X783 @ X786 @ X785 @ (comp @ X787 @ X788))))) | (((X783 @ id @ X782 @ id)) != $true) | ? [X789 : term,X790 : term] : (($true = ((X783 @ id @ X790 @ id))) & ($true = ((X783 @ id @ X789 @ id))) & ($true != ((X783 @ id @ (ap @ (sub @ X789 @ id) @ X790) @ id)))) | ? [X791 : subst,X792 : term,X793 : subst,X794 : subst] : ((((X783 @ X793 @ X792 @ (comp @ X794 @ X791))) = $true) & ($true != ((X783 @ (comp @ X793 @ X794) @ (sub @ X792 @ X794) @ X791)))) | ($true = ((X783 @ id @ (ap @ X784 @ X782) @ id))) | (((X783 @ id @ X784 @ id)) != $true)) & ! [X795 : (term > $o),X796 : term] : (? [X797 : term] : (($true != ((X795 @ (lam @ X797)))) & ! [X798 : term] : (($true != ((X795 @ X798))) | (((X795 @ (sub @ X797 @ (push @ X798 @ id)))) = $true))) | ? [X799 : term] : (($true = ((var @ X799))) & ($true != ((X795 @ X799)))) | ? [X800 : term,X801 : term] : (($true != ((X795 @ (ap @ X801 @ X800)))) & ($true = ((X795 @ X800))) & (((X795 @ X801)) = $true)) | (((X795 @ X796)) = $true)) & (sP2 != $true) & ($true != sP1))) & (? [X802 : term,X803 : (subst > term > subst > $o),X804 : term] : (! [X805 : term,X806 : subst,X807 : subst,X808 : subst] : (($true != ((X803 @ (comp @ X806 @ X807) @ (sub @ X805 @ X807) @ X808))) | ($true = ((X803 @ X806 @ X805 @ (comp @ X807 @ X808))))) & ($true = ((X803 @ id @ X802 @ id))) & ! [X809 : term,X810 : term] : (($true != ((X803 @ id @ X810 @ id))) | (((X803 @ id @ X809 @ id)) != $true) | ($true = ((X803 @ id @ (ap @ (sub @ X809 @ id) @ X810) @ id)))) & ! [X811 : subst,X812 : term,X813 : subst,X814 : subst] : (($true != ((X803 @ X813 @ X812 @ (comp @ X814 @ X811)))) | (((X803 @ (comp @ X813 @ X814) @ (sub @ X812 @ X814) @ X811)) = $true)) & ($true != ((X803 @ id @ (ap @ X804 @ X802) @ id))) & (((X803 @ id @ X804 @ id)) = $true)) | ? [X815 : (term > $o),X816 : term] : (! [X817 : term] : ((((X815 @ (lam @ X817))) = $true) | ? [X818 : term] : (($true = ((X815 @ X818))) & ($true != ((X815 @ (sub @ X817 @ (push @ X818 @ id))))))) & ! [X819 : term] : (($true != ((var @ X819))) | ($true = ((X815 @ X819)))) & ! [X820 : term,X821 : term] : (($true = ((X815 @ (ap @ X821 @ X820)))) | ($true != ((X815 @ X820))) | (((X815 @ X821)) != $true)) & (((X815 @ X816)) != $true)) | (sP2 = $true) | ($true = sP1) | (hoasinduction_lthm != $true)) & (! [X822 : term] : (((sub @ X822 @ id)) = X822) | (termmset != $true)) & ((termmset = $true) | ? [X823 : term] : (((sub @ X823 @ id)) != X823)) & (ulamvarsh = $true) & (id = ((d2subst @ d_id))) & (! [X824 : term] : ? [X825 : (subst > term > term)] : (((X825 @ sh @ one)) = ((sub @ X824 @ (push @ one @ sh)))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X826 : term] : ! [X827 : (subst > term > term)] : (((X827 @ sh @ one)) != ((sub @ X826 @ (push @ one @ sh))))) & (! [X828 : (term > $o),X829 : term] : (($true = ((X828 @ X829))) | ? [X830 : term] : (! [X831 : term] : (($true = ((X828 @ (sub @ X830 @ (push @ X831 @ id))))) | ($true != ((X828 @ X831)))) & ($true != ((X828 @ (lam @ X830))))) | ? [X832 : term,X833 : term] : (($true != ((X828 @ (ap @ X832 @ X833)))) & ($true = ((X828 @ X833))) & (((X828 @ X832)) = $true)) | ? [X834 : term] : ((((X828 @ X834)) != $true) & ($true = ((var @ X834))))) | (induction2 != $true)) & ((induction2 = $true) | ? [X835 : (term > $o),X836 : term] : ((((X835 @ X836)) != $true) & ! [X837 : term] : (? [X838 : term] : ((((X835 @ (sub @ X837 @ (push @ X838 @ id)))) != $true) & (((X835 @ X838)) = $true)) | (((X835 @ (lam @ X837))) = $true)) & ! [X839 : term,X840 : term] : (($true = ((X835 @ (ap @ X839 @ X840)))) | ($true != ((X835 @ X840))) | ($true != ((X835 @ X839)))) & ! [X841 : term] : (($true = ((X835 @ X841))) | ($true != ((var @ X841)))))) & (pushprop_lthm_orig = $true) & (lamnotvar = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem1_gthm = $true)),
  inference(rectify,[],[f58])).
thf(f60,plain,(
  ((hoasinduction_lem3v2_lthm = $true) | ((! [X3 : term] : (($true != ((sK126 @ X3))) | (((sK126 @ (sub @ sK124 @ (push @ X3 @ id)))) = $true)) & ! [X4 : term] : (((sK125 @ id @ X4 @ id)) = ((sK126 @ X4))) & ! [X5 : (subst > term > term)] : (($true = ((sK125 @ id @ (lam @ (X5 @ sh @ one)) @ id))) | ((((sK125 @ id @ (sK127 @ X5) @ id)) = $true) & ($true != ((sK125 @ id @ (X5 @ id @ (sK127 @ X5)) @ id)))) | (((X5 @ (comp @ (sK129 @ X5) @ (sK130 @ X5)) @ (sub @ (sK128 @ X5) @ (sK130 @ X5)))) != ((sub @ (X5 @ (sK129 @ X5) @ (sK128 @ X5)) @ (sK130 @ X5))))) & ! [X10 : subst,X11 : subst,X12 : term,X13 : subst] : ((((sK125 @ (comp @ X13 @ X10) @ (sub @ X12 @ X10) @ X11)) = $true) | ($true != ((sK125 @ X13 @ X12 @ (comp @ X10 @ X11))))) & ($true != ((sK126 @ (lam @ sK124)))) & ! [X14 : subst,X15 : subst,X16 : subst,X17 : term] : (($true != ((sK125 @ (comp @ X15 @ X16) @ (sub @ X17 @ X16) @ X14))) | ($true = ((sK125 @ X15 @ X17 @ (comp @ X16 @ X14)))))) & ! [X18 : term] : (((sub @ X18 @ id)) = X18))) & (! [X19 : term,X20 : (subst > term > subst > $o),X21 : (term > $o)] : (((((X21 @ (sK131 @ X21 @ X19))) = $true) & (((X21 @ (sub @ X19 @ (push @ (sK131 @ X21 @ X19) @ id)))) != $true)) | (((X21 @ (sK132 @ X21 @ X20))) != ((X20 @ id @ (sK132 @ X21 @ X20) @ id))) | (($true != ((X20 @ id @ (lam @ (sK133 @ X20 @ sh @ one)) @ id))) & ! [X25 : term] : ((((X20 @ id @ X25 @ id)) != $true) | ($true = ((X20 @ id @ (sK133 @ X20 @ id @ X25) @ id)))) & ! [X26 : term,X27 : subst,X28 : subst] : (((sK133 @ X20 @ (comp @ X27 @ X28) @ (sub @ X26 @ X28))) = ((sub @ (sK133 @ X20 @ X27 @ X26) @ X28)))) | ((((X20 @ (comp @ (sK137 @ X20) @ (sK134 @ X20)) @ (sub @ (sK136 @ X20) @ (sK134 @ X20)) @ (sK135 @ X20))) != $true) & ($true = ((X20 @ (sK137 @ X20) @ (sK136 @ X20) @ (comp @ (sK134 @ X20) @ (sK135 @ X20)))))) | ($true = ((X21 @ (lam @ X19)))) | ((((X20 @ (comp @ (sK139 @ X20) @ (sK140 @ X20)) @ (sub @ (sK141 @ X20) @ (sK140 @ X20)) @ (sK138 @ X20))) = $true) & (((X20 @ (sK139 @ X20) @ (sK141 @ X20) @ (comp @ (sK140 @ X20) @ (sK138 @ X20)))) != $true))) | (sK142 != ((sub @ sK142 @ id))) | (hoasinduction_lem3v2_lthm != $true)) & (! [X38 : (subst > term > term),X39 : term,X40 : term] : ((((X38 @ (comp @ (sK144 @ X38) @ (sK145 @ X38)) @ (sub @ (sK143 @ X38) @ (sK145 @ X38)))) != ((sub @ (X38 @ (sK144 @ X38) @ (sK143 @ X38)) @ (sK145 @ X38)))) | (((lam @ (X38 @ sh @ one))) != ((ap @ (sub @ X40 @ id) @ X39)))) | (hoaslamnotap != $true)) & ((hoaslamnotap = $true) | (! [X47 : term,X48 : subst,X49 : subst] : (((sub @ (sK146 @ X48 @ X47) @ X49)) = ((sK146 @ (comp @ X48 @ X49) @ (sub @ X47 @ X49)))) & (((ap @ (sub @ sK148 @ id) @ sK147)) = ((lam @ (sK146 @ sh @ one)))))) & ((hoasinduction_lem3v2 = $true) | (($true != ((sK151 @ (lam @ sK149)))) & ! [X53 : subst,X54 : term,X55 : subst,X56 : subst] : (($true != ((sK150 @ (comp @ X53 @ X55) @ (sub @ X54 @ X55) @ X56))) | ($true = ((sK150 @ X53 @ X54 @ (comp @ X55 @ X56))))) & ! [X57 : term] : (((sK151 @ X57)) = ((sK150 @ id @ X57 @ id))) & ! [X58 : subst,X59 : term,X60 : subst,X61 : subst] : (($true != ((sK150 @ X58 @ X59 @ (comp @ X61 @ X60)))) | ($true = ((sK150 @ (comp @ X58 @ X61) @ (sub @ X59 @ X61) @ X60)))) & ! [X62 : term] : (($true != ((sK151 @ X62))) | (((sK151 @ (sub @ sK149 @ (push @ X62 @ id)))) = $true)) & ! [X63 : (subst > term > term)] : ((($true != ((sK150 @ id @ (X63 @ id @ (sK152 @ X63)) @ id))) & ($true = ((sK150 @ id @ (sK152 @ X63) @ id)))) | (((sK150 @ id @ (lam @ (X63 @ sh @ one)) @ id)) = $true) | (((sub @ (X63 @ (sK154 @ X63) @ (sK155 @ X63)) @ (sK153 @ X63))) != ((X63 @ (comp @ (sK154 @ X63) @ (sK153 @ X63)) @ (sub @ (sK155 @ X63) @ (sK153 @ X63)))))))) & (! [X68 : term,X69 : (subst > term > subst > $o),X70 : (term > $o)] : (($true = ((X70 @ (lam @ X68)))) | (($true = ((X69 @ (comp @ (sK156 @ X69) @ (sK158 @ X69)) @ (sub @ (sK157 @ X69) @ (sK158 @ X69)) @ (sK159 @ X69)))) & ($true != ((X69 @ (sK156 @ X69) @ (sK157 @ X69) @ (comp @ (sK158 @ X69) @ (sK159 @ X69)))))) | (((X69 @ id @ (sK160 @ X70 @ X69) @ id)) != ((X70 @ (sK160 @ X70 @ X69)))) | (($true = ((X69 @ (sK161 @ X69) @ (sK162 @ X69) @ (comp @ (sK164 @ X69) @ (sK163 @ X69))))) & ($true != ((X69 @ (comp @ (sK161 @ X69) @ (sK164 @ X69)) @ (sub @ (sK162 @ X69) @ (sK164 @ X69)) @ (sK163 @ X69))))) | (($true = ((X70 @ (sK165 @ X70 @ X68)))) & ($true != ((X70 @ (sub @ X68 @ (push @ (sK165 @ X70 @ X68) @ id)))))) | (! [X82 : term] : ((((X69 @ id @ (sK166 @ X69 @ id @ X82) @ id)) = $true) | ($true != ((X69 @ id @ X82 @ id)))) & (((X69 @ id @ (lam @ (sK166 @ X69 @ sh @ one)) @ id)) != $true) & ! [X83 : subst,X84 : subst,X85 : term] : (((sK166 @ X69 @ (comp @ X84 @ X83) @ (sub @ X85 @ X83))) = ((sub @ (sK166 @ X69 @ X84 @ X85) @ X83))))) | (hoasinduction_lem3v2 != $true)) & (! [X86 : term,X87 : (subst > term > subst > $o)] : ((! [X89 : term] : (($true = ((X87 @ id @ (sK167 @ X87 @ id @ X89) @ id))) | ($true != ((X87 @ id @ X89 @ id)))) & (((X87 @ id @ (lam @ (sK167 @ X87 @ sh @ one)) @ id)) != $true) & ! [X90 : term,X91 : subst,X92 : subst] : (((sub @ (sK167 @ X87 @ X92 @ X90) @ X91)) = ((sK167 @ X87 @ (comp @ X92 @ X91) @ (sub @ X90 @ X91))))) | (((X87 @ id @ X86 @ id)) = $true) | (($true = ((X87 @ id @ (sK169 @ X87) @ id))) & ($true = ((X87 @ id @ (sK168 @ X87) @ id))) & ($true != ((X87 @ id @ (ap @ (sub @ (sK168 @ X87) @ id) @ (sK169 @ X87)) @ id))))) | (hoasinduction_no_psi_cond != $true)) & ((hoasinduction_no_psi_cond = $true) | (! [X97 : (subst > term > term)] : ((($true != ((sK171 @ id @ (X97 @ id @ (sK172 @ X97)) @ id))) & (((sK171 @ id @ (sK172 @ X97) @ id)) = $true)) | (((sK171 @ id @ (lam @ (X97 @ sh @ one)) @ id)) = $true) | (((X97 @ (comp @ (sK175 @ X97) @ (sK174 @ X97)) @ (sub @ (sK173 @ X97) @ (sK174 @ X97)))) != ((sub @ (X97 @ (sK175 @ X97) @ (sK173 @ X97)) @ (sK174 @ X97))))) & (((sK171 @ id @ sK170 @ id)) != $true) & ! [X102 : term,X103 : term] : ((((sK171 @ id @ X103 @ id)) != $true) | ($true != ((sK171 @ id @ X102 @ id))) | (((sK171 @ id @ (ap @ (sub @ X102 @ id) @ X103) @ id)) = $true)))) & (hoasapinj1_gthm = $true) & (hoaslamnotap_lthm = $true) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarind = $true) & (pushprop_lem2v2_gthm = $true) & ! [X104 : d_subst,X105 : d_subst] : ((((d2subst @ X105)) != ((d2subst @ X104))) | (X104 = X105)) & ((hoasinduction_lem3v2a_lthm = $true) | ((($true != ((sK176 @ (lam @ sK178)))) & ! [X109 : term] : (($true != ((sK176 @ X109))) | (((sK176 @ (sub @ sK178 @ (push @ X109 @ id)))) = $true)) & ! [X110 : term] : (((sK177 @ id @ X110 @ id)) = ((sK176 @ X110))) & ! [X111 : (subst > term > term)] : ((((X111 @ (comp @ (sK179 @ X111) @ (sK181 @ X111)) @ (sub @ (sK180 @ X111) @ (sK181 @ X111)))) != ((sub @ (X111 @ (sK179 @ X111) @ (sK180 @ X111)) @ (sK181 @ X111)))) | (((sK177 @ id @ (lam @ (X111 @ sh @ one)) @ id)) = $true) | ((((sK177 @ id @ (sK182 @ X111) @ id)) = $true) & (((sK177 @ id @ (X111 @ id @ (sK182 @ X111)) @ id)) != $true)))) & ! [X116 : term] : (((sub @ X116 @ id)) = X116) & ! [X117 : term] : ! [X119 : subst,X120 : term] : (((sub @ X117 @ (push @ X120 @ X119))) = ((sK183 @ X117 @ X119 @ X120))))) & (! [X121 : (term > $o),X122 : (subst > term > subst > $o),X123 : term] : (($true = ((X121 @ (lam @ X123)))) | (($true = ((X121 @ (sK184 @ X123 @ X121)))) & ($true != ((X121 @ (sub @ X123 @ (push @ (sK184 @ X123 @ X121) @ id)))))) | (((X122 @ id @ (sK185 @ X122 @ X121) @ id)) != ((X121 @ (sK185 @ X122 @ X121)))) | (! [X127 : subst,X128 : term,X129 : subst] : (((sub @ (sK186 @ X122 @ X127 @ X128) @ X129)) = ((sK186 @ X122 @ (comp @ X127 @ X129) @ (sub @ X128 @ X129)))) & (((X122 @ id @ (lam @ (sK186 @ X122 @ sh @ one)) @ id)) != $true) & ! [X130 : term] : ((((X122 @ id @ X130 @ id)) != $true) | ($true = ((X122 @ id @ (sK186 @ X122 @ id @ X130) @ id)))))) | (sK187 != ((sub @ sK187 @ id))) | ! [X133 : (subst > term > term)] : (((X133 @ (sK189 @ X133) @ (sK190 @ X133))) != ((sub @ sK188 @ (push @ (sK190 @ X133) @ (sK189 @ X133))))) | (hoasinduction_lem3v2a_lthm != $true)) & (hoaslamnotvar_lthm = $true) & ((pushprop_lem0 = $true) | ! [X139 : (term > $o)] : (((sK192 @ (sub @ (sK194 @ X139) @ (push @ sK191 @ sK193)))) != ((X139 @ (sK194 @ X139))))) & (! [X141 : term,X142 : (term > $o),X143 : subst] : ! [X145 : term] : (((X142 @ (sub @ X145 @ (push @ X141 @ X143)))) = ((sK195 @ X143 @ X142 @ X141 @ X145))) | (pushprop_lem0 != $true)) & (hoasinduction_lem2_lthm = $true) & (! [X146 : subst] : (((comp @ X146 @ id)) = X146) | (axidr != $true)) & ((axidr = $true) | (sK196 != ((comp @ sK196 @ id)))) & (induction2_gthm = $true) & ! [X148 : d_subst] : (d_id = X148) & (! [X149 : subst,X150 : (term > $o),X151 : (term > $o),X152 : term] : ((((X150 @ (sK197 @ X152 @ X151 @ X150 @ X149))) != ((X151 @ (sub @ (sK197 @ X152 @ X151 @ X150 @ X149) @ (push @ X152 @ X149))))) | ($true != ((X151 @ X152))) | (((X150 @ one)) = $true)) | (sK198 != ((sub @ one @ (push @ sK198 @ sK199)))) | (pushprop_lem1v2_lthm != $true)) & ((pushprop_lem1v2_lthm = $true) | ((! [X160 : term] : (((sK202 @ (sub @ X160 @ (push @ sK203 @ sK200)))) = ((sK201 @ X160))) & ($true = ((sK202 @ sK203))) & (((sK201 @ one)) != $true)) & ! [X161 : term,X162 : subst] : (((sub @ one @ (push @ X161 @ X162))) = X161))) & (pushprop_lthm = $true) & ! [X163 : subst] : (((d2subst @ (sK204 @ X163))) = X163) & (((sK206 != sK205) & (((lam @ sK205)) = ((lam @ sK206)))) | (((comp @ sh @ (push @ sK207 @ sK208))) != sK208) | (sK209 != ((sub @ one @ (push @ sK209 @ sK210)))) | ! [X171 : subst,X172 : (subst > term > term),X173 : term,X174 : (subst > term > term)] : ((((X174 @ (comp @ (sK211 @ X174) @ (sK213 @ X174)) @ (sub @ (sK212 @ X174) @ (sK213 @ X174)))) != ((sub @ (X174 @ (sK211 @ X174) @ (sK212 @ X174)) @ (sK213 @ X174)))) | (((X172 @ X171 @ X173)) = ((X174 @ X171 @ X173))) | (((lam @ (X174 @ sh @ one))) != ((lam @ (X172 @ sh @ one)))) | (((sub @ (X172 @ (sK216 @ X172) @ (sK214 @ X172)) @ (sK215 @ X172))) != ((X172 @ (comp @ (sK216 @ X172) @ (sK215 @ X172)) @ (sub @ (sK214 @ X172) @ (sK215 @ X172)))))) | (hoaslaminj_lthm != $true)) & ((hoaslaminj_lthm = $true) | (! [X181 : term,X182 : term] : ((X181 = X182) | (((lam @ X181)) != ((lam @ X182)))) & ! [X183 : term,X184 : subst] : (((comp @ sh @ (push @ X183 @ X184))) = X184) & ! [X185 : term,X186 : subst] : (((sub @ one @ (push @ X185 @ X186))) = X185) & (! [X191 : subst,X192 : term,X193 : subst] : (((sK220 @ (comp @ X191 @ X193) @ (sub @ X192 @ X193))) = ((sub @ (sK220 @ X191 @ X192) @ X193))) & (((sK220 @ sK217 @ sK219)) != ((sK218 @ sK217 @ sK219))) & (((lam @ (sK220 @ sh @ one))) = ((lam @ (sK218 @ sh @ one)))) & ! [X194 : term,X195 : subst,X196 : subst] : (((sub @ (sK218 @ X196 @ X194) @ X195)) = ((sK218 @ (comp @ X196 @ X195) @ (sub @ X194 @ X195))))))) & (hoasinduction_lem1v2_gthm = $true) & (! [X197 : (subst > term > subst > $o)] : ! [X199 : term] : (((X197 @ id @ X199 @ id)) = ((sK221 @ X197 @ X199))) | (hoasinduction_lem0_lthm != $true)) & ((hoasinduction_lem0_lthm = $true) | ! [X201 : (term > $o)] : (((sK222 @ id @ (sK223 @ X201) @ id)) != ((X201 @ (sK223 @ X201))))) & ! [X203 : term] : (((d2term @ (sK224 @ X203))) = X203) & (((d2subst @ d_id)) = sh) & (pushprop_lem3v2_lthm = $true) & ((pushprop_lem1_lthm = $true) | (! [X205 : subst,X206 : term] : (((sub @ one @ (push @ X206 @ X205))) = X206) & ! [X207 : subst,X208 : term] : (((comp @ sh @ (push @ X208 @ X207))) = X207) & (($true != ((sK225 @ (sub @ sK228 @ (push @ sK226 @ sK227))))) & ($true = ((sK229 @ sK228)))))) & ((sK231 != ((sub @ one @ (push @ sK231 @ sK230)))) | (((comp @ sh @ (push @ sK233 @ sK232))) != sK232) | ! [X218 : (term > $o),X219 : term,X220 : subst,X221 : term,X222 : (term > $o)] : (($true = ((X218 @ (sub @ X221 @ (push @ X219 @ X220))))) | (((X222 @ X221)) != $true)) | (pushprop_lem1_lthm != $true)) & (pushprop_lem1v2_gthm = $true) & (! [X223 : subst,X224 : term] : (((comp @ sh @ (push @ X224 @ X223))) = X223) | (axshiftcons != $true)) & ((axshiftcons = $true) | (sK234 != ((comp @ sh @ (push @ sK235 @ sK234))))) & ((apinj1 = $true) | ((sK239 != sK238) & (((ap @ sK238 @ sK236)) = ((ap @ sK239 @ sK237))))) & (! [X231 : term,X232 : term,X233 : term,X234 : term] : ((X233 = X234) | (((ap @ X233 @ X231)) != ((ap @ X234 @ X232)))) | (apinj1 != $true)) & ((laminj = $true) | ((sK240 != sK241) & (((lam @ sK241)) = ((lam @ sK240))))) & (! [X237 : term,X238 : term] : ((X237 = X238) | (((lam @ X237)) != ((lam @ X238)))) | (laminj != $true)) & (hoasinduction_lem2v2_gthm = $true) & (! [X239 : term,X240 : term,X241 : term,X242 : term] : ((X239 = X241) | (((ap @ X242 @ X239)) != ((ap @ X240 @ X241)))) | (apinj2 != $true)) & ((apinj2 = $true) | ((sK242 != sK244) & (((ap @ sK243 @ sK244)) = ((ap @ sK245 @ sK242))))) & (lamnotap != $true) & ((induction2_lthm = $true) | ($true != sP9)) & (($true = sP9) | (induction2_lthm != $true)) & (! [X247 : term,X248 : (term > $o),X249 : (subst > term > subst > $o),X250 : term] : ((((X248 @ (sK246 @ X249 @ X248))) != ((X249 @ id @ (sK246 @ X249 @ X248) @ id))) | ((((X249 @ id @ (sK247 @ X249) @ id)) = $true) & ($true = ((X249 @ id @ (sK248 @ X249) @ id))) & (((X249 @ id @ (ap @ (sub @ (sK248 @ X249) @ id) @ (sK247 @ X249)) @ id)) != $true)) | (($true = ((X249 @ (comp @ (sK249 @ X249) @ (sK250 @ X249)) @ (sub @ (sK251 @ X249) @ (sK250 @ X249)) @ (sK252 @ X249)))) & (((X249 @ (sK249 @ X249) @ (sK251 @ X249) @ (comp @ (sK250 @ X249) @ (sK252 @ X249)))) != $true)) | ($true != ((X248 @ X250))) | ($true = ((X248 @ (ap @ X247 @ X250)))) | ((((X249 @ (comp @ (sK256 @ X249) @ (sK254 @ X249)) @ (sub @ (sK255 @ X249) @ (sK254 @ X249)) @ (sK253 @ X249))) != $true) & (((X249 @ (sK256 @ X249) @ (sK255 @ X249) @ (comp @ (sK254 @ X249) @ (sK253 @ X249)))) = $true)) | ($true != ((X248 @ X247)))) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | (! [X266 : term] : (((sK258 @ X266)) = ((sK259 @ id @ X266 @ id))) & ! [X267 : term,X268 : term] : ((((sK259 @ id @ X267 @ id)) != $true) | ($true != ((sK259 @ id @ X268 @ id))) | ($true = ((sK259 @ id @ (ap @ (sub @ X268 @ id) @ X267) @ id)))) & ! [X269 : subst,X270 : subst,X271 : term,X272 : subst] : ((((sK259 @ (comp @ X269 @ X270) @ (sub @ X271 @ X270) @ X272)) != $true) | ($true = ((sK259 @ X269 @ X271 @ (comp @ X270 @ X272))))) & ($true = ((sK258 @ sK260))) & ($true != ((sK258 @ (ap @ sK257 @ sK260)))) & ! [X273 : subst,X274 : subst,X275 : term,X276 : subst] : ((((sK259 @ (comp @ X276 @ X274) @ (sub @ X275 @ X274) @ X273)) = $true) | (((sK259 @ X276 @ X275 @ (comp @ X274 @ X273))) != $true)) & ($true = ((sK258 @ sK257))))) & ((! [X277 : subst] : (((comp @ X277 @ id)) = X277) & ! [X278 : subst] : (((comp @ id @ X278)) = X278)) | (sK261 != ((comp @ sK261 @ id))) | (((comp @ id @ sK262)) != sK262) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | (((((comp @ sK263 @ id)) != sK263) | (((comp @ id @ sK264)) != sK264)) & ! [X283 : subst] : (((comp @ X283 @ id)) = X283) & ! [X284 : subst] : (((comp @ id @ X284)) = X284))) & (pushprop_lem3v2 = $true) & ((hoasinduction_lem3aa_lthm = $true) | (! [X287 : (subst > term > term)] : ((($true != ((sK266 @ id @ (X287 @ id @ (sK267 @ X287)) @ id))) & (((sK266 @ id @ (sK267 @ X287) @ id)) = $true)) | (((X287 @ (comp @ (sK270 @ X287) @ (sK268 @ X287)) @ (sub @ (sK269 @ X287) @ (sK268 @ X287)))) != ((sub @ (X287 @ (sK270 @ X287) @ (sK269 @ X287)) @ (sK268 @ X287)))) | ($true = ((sK266 @ id @ (lam @ (X287 @ sh @ one)) @ id)))) & (((sK266 @ id @ (lam @ (sub @ sK265 @ (push @ one @ sh))) @ id)) != $true) & ! [X292 : term] : ((((sK266 @ id @ X292 @ id)) != $true) | ($true = ((sK266 @ id @ (sub @ sK265 @ (push @ X292 @ id)) @ id)))))) & (! [X293 : term,X294 : (subst > term > subst > $o)] : ((! [X296 : term] : (($true = ((X294 @ id @ (sK271 @ X294 @ id @ X296) @ id))) | ($true != ((X294 @ id @ X296 @ id)))) & ! [X297 : subst,X298 : term,X299 : subst] : (((sK271 @ X294 @ (comp @ X299 @ X297) @ (sub @ X298 @ X297))) = ((sub @ (sK271 @ X294 @ X299 @ X298) @ X297))) & (((X294 @ id @ (lam @ (sK271 @ X294 @ sh @ one)) @ id)) != $true)) | (((X294 @ id @ (lam @ (sub @ X293 @ (push @ one @ sh))) @ id)) = $true) | (($true = ((X294 @ id @ (sK272 @ X294 @ X293) @ id))) & (((X294 @ id @ (sub @ X293 @ (push @ (sK272 @ X294 @ X293) @ id)) @ id)) != $true))) | (hoasinduction_lem3aa_lthm != $true)) & (pushprop_lem0_gthm = $true) & (! [X301 : subst,X302 : (term > $o),X303 : term,X304 : (term > $o)] : ((((X304 @ X303)) != $true) | ($true = ((X302 @ one))) | (((X302 @ (sK273 @ X304 @ X303 @ X302 @ X301))) != ((X304 @ (sub @ (sK273 @ X304 @ X303 @ X302 @ X301) @ (push @ X303 @ X301)))))) | (pushprop_lem1v2 != $true)) & ((pushprop_lem1v2 = $true) | ((((sK277 @ sK276)) = $true) & ($true != ((sK275 @ one))) & ! [X310 : term] : (((sK277 @ (sub @ X310 @ (push @ sK276 @ sK274)))) = ((sK275 @ X310))))) & (hoasinduction_lem3b_gthm = $true) & (axapp = $true) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (((var @ (d2term @ d_one))) != $true) & ! [X311 : d_term,X312 : d_term] : ((X311 = X312) | (((d2term @ X311)) != ((d2term @ X312)))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (hoasinduction_gthm = $true) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y0 @ id @ Y2 @ id) = (Y1 @ Y2)))))))) & (induction2lem_gthm = $true) & ((induction2lem_lthm = $true) | (sP8 != $true)) & ((sP8 = $true) | (induction2lem_lthm != $true)) & (pushprop_lem2v2 = $true) & (! [X313 : term,X314 : (subst > term > subst > $o)] : (($true = ((X314 @ id @ (lam @ X313) @ id))) | ((((X314 @ id @ (sK278 @ X314 @ X313) @ id)) = $true) & ($true != ((X314 @ id @ (sub @ X313 @ (push @ (sK278 @ X314 @ X313) @ id)) @ id)))) | (! [X317 : subst,X318 : subst,X319 : term] : (((sub @ (sK279 @ X314 @ X318 @ X319) @ X317)) = ((sK279 @ X314 @ (comp @ X318 @ X317) @ (sub @ X319 @ X317)))) & ($true != ((X314 @ id @ (lam @ (sK279 @ X314 @ sh @ one)) @ id))) & ! [X320 : term] : (($true = ((X314 @ id @ (sK279 @ X314 @ id @ X320) @ id))) | ($true != ((X314 @ id @ X320 @ id)))))) | (hoasinduction_lem3a != $true)) & ((hoasinduction_lem3a = $true) | ((((sK281 @ id @ (lam @ sK280) @ id)) != $true) & ! [X323 : term] : (($true != ((sK281 @ id @ X323 @ id))) | ($true = ((sK281 @ id @ (sub @ sK280 @ (push @ X323 @ id)) @ id)))) & ! [X324 : (subst > term > term)] : ((((sub @ (X324 @ (sK283 @ X324) @ (sK284 @ X324)) @ (sK282 @ X324))) != ((X324 @ (comp @ (sK283 @ X324) @ (sK282 @ X324)) @ (sub @ (sK284 @ X324) @ (sK282 @ X324))))) | (((sK281 @ id @ (lam @ (X324 @ sh @ one)) @ id)) = $true) | (($true != ((sK281 @ id @ (X324 @ id @ (sK285 @ X324)) @ id))) & ($true = ((sK281 @ id @ (sK285 @ X324) @ id))))))) & (hoaslaminj_gthm = $true) & (((sK287 != sK288) & (((ap @ sK288 @ sK286)) = ((ap @ sK287 @ sK289)))) | (((sub @ sK290 @ id)) != sK290) | ! [X334 : term,X335 : term,X336 : term,X337 : term] : ((((ap @ (sub @ X336 @ id) @ X335)) != ((ap @ (sub @ X337 @ id) @ X334))) | (X336 = X337)) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (! [X338 : term,X339 : term,X340 : term,X341 : term] : ((X339 = X340) | (((ap @ X340 @ X338)) != ((ap @ X339 @ X341)))) & ! [X342 : term] : (((sub @ X342 @ id)) = X342) & ((((ap @ (sub @ sK294 @ id) @ sK291)) = ((ap @ (sub @ sK293 @ id) @ sK292))) & (sK294 != sK293)))) & (hoasinduction_lem1 = $true) & (hoasapinj2_gthm = $true) & (hoasapnotvar_lthm = $true) & (((d2term @ d_one)) = one) & ((hoasinduction_lem3v2a = $true) | (! [X350 : term] : ((((sK296 @ X350)) != $true) | ($true = ((sK296 @ (sub @ sK297 @ (push @ X350 @ id)))))) & ($true != ((sK296 @ (lam @ sK297)))) & ! [X351 : (subst > term > term)] : (($true = ((sK295 @ id @ (lam @ (X351 @ sh @ one)) @ id))) | (($true != ((sK295 @ id @ (X351 @ id @ (sK298 @ X351)) @ id))) & ($true = ((sK295 @ id @ (sK298 @ X351) @ id)))) | (((X351 @ (comp @ (sK299 @ X351) @ (sK301 @ X351)) @ (sub @ (sK300 @ X351) @ (sK301 @ X351)))) != ((sub @ (X351 @ (sK299 @ X351) @ (sK300 @ X351)) @ (sK301 @ X351))))) & ! [X356 : term] : (((sK295 @ id @ X356 @ id)) = ((sK296 @ X356))))) & (! [X357 : (subst > term > subst > $o),X358 : (term > $o),X359 : term] : ((($true = ((X358 @ (sK302 @ X359 @ X358)))) & ($true != ((X358 @ (sub @ X359 @ (push @ (sK302 @ X359 @ X358) @ id)))))) | (((X358 @ (lam @ X359))) = $true) | ((((X357 @ id @ (lam @ (sK303 @ X357 @ sh @ one)) @ id)) != $true) & ! [X362 : term] : (($true = ((X357 @ id @ (sK303 @ X357 @ id @ X362) @ id))) | (((X357 @ id @ X362 @ id)) != $true)) & ! [X363 : subst,X364 : term,X365 : subst] : (((sub @ (sK303 @ X357 @ X363 @ X364) @ X365)) = ((sK303 @ X357 @ (comp @ X363 @ X365) @ (sub @ X364 @ X365))))) | (((X357 @ id @ (sK304 @ X358 @ X357) @ id)) != ((X358 @ (sK304 @ X358 @ X357))))) | (hoasinduction_lem3v2a != $true)) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (($true = sP7) | (! [X369 : term,X370 : term] : ((((sK306 @ X370)) != $true) | ($true = ((sK306 @ (ap @ X369 @ X370)))) | ($true != ((sK306 @ X369)))) & ! [X371 : term] : (($true = ((sK306 @ X371))) | (((var @ X371)) != $true)) & ($true != ((sK306 @ sK305))) & ! [X372 : term] : ((((sK306 @ (lam @ X372))) = $true) | (($true != ((sK306 @ (sub @ X372 @ (push @ (sK307 @ X372) @ id))))) & (((sK306 @ (sK307 @ X372))) = $true)))) | (! [X377 : (subst > term > term)] : ((((X377 @ (comp @ (sK312 @ X377) @ (sK311 @ X377)) @ (sub @ (sK313 @ X377) @ (sK311 @ X377)))) != ((sub @ (X377 @ (sK312 @ X377) @ (sK313 @ X377)) @ (sK311 @ X377)))) | (($true = ((sK310 @ id @ (sK314 @ X377) @ id))) & ($true != ((sK310 @ id @ (X377 @ id @ (sK314 @ X377)) @ id)))) | ($true = ((sK310 @ id @ (lam @ (X377 @ sh @ one)) @ id)))) & ! [X382 : term] : (((sK309 @ X382)) = ((sK310 @ id @ X382 @ id))) & ! [X383 : term] : ((((sK309 @ X383)) != $true) | (((sK309 @ (sub @ sK308 @ (push @ X383 @ id)))) = $true)) & (((sK309 @ (lam @ sK308))) != $true)) | ! [X385 : (term > $o)] : (((X385 @ (sK316 @ X385))) != ((sK315 @ id @ (sK316 @ X385) @ id))) | (((sub @ sK317 @ id)) != sK317) | (hoasinduction_no_psi_cond_lthm != $true)) & ((hoasinduction_no_psi_cond_lthm = $true) | (($true != sP7) & ! [X388 : term,X389 : (term > $o)] : (((((X389 @ (sK319 @ X389))) = $true) & ($true != ((X389 @ (ap @ (sK318 @ X389) @ (sK319 @ X389))))) & (((X389 @ (sK318 @ X389))) = $true)) | ((((X389 @ (sK320 @ X389))) != $true) & (((var @ (sK320 @ X389))) = $true)) | (((X389 @ X388)) = $true) | ((((X389 @ (lam @ (sK321 @ X389)))) != $true) & ! [X394 : term] : (($true = ((X389 @ (sub @ (sK321 @ X389) @ (push @ X394 @ id))))) | ($true != ((X389 @ X394)))))) & ! [X395 : term,X396 : (term > $o),X397 : (subst > term > subst > $o)] : ((! [X399 : subst,X400 : subst,X401 : term] : (((sub @ (sK322 @ X397 @ X400 @ X401) @ X399)) = ((sK322 @ X397 @ (comp @ X400 @ X399) @ (sub @ X401 @ X399)))) & ! [X402 : term] : (($true != ((X397 @ id @ X402 @ id))) | ($true = ((X397 @ id @ (sK322 @ X397 @ id @ X402) @ id)))) & ($true != ((X397 @ id @ (lam @ (sK322 @ X397 @ sh @ one)) @ id)))) | (((X396 @ (sK323 @ X397 @ X396))) != ((X397 @ id @ (sK323 @ X397 @ X396) @ id))) | ((((X396 @ (sK324 @ X396 @ X395))) = $true) & (((X396 @ (sub @ X395 @ (push @ (sK324 @ X396 @ X395) @ id)))) != $true)) | (((X396 @ (lam @ X395))) = $true)) & ! [X405 : (subst > term > subst > $o)] : ! [X407 : term] : (((X405 @ id @ X407 @ id)) = ((sK325 @ X405 @ X407))) & ! [X408 : term] : (((sub @ X408 @ id)) = X408))) & (axvarshift = $true) & (! [X409 : term,X410 : (subst > term > subst > $o)] : ((($true = ((X410 @ id @ (sK326 @ X410 @ X409) @ id))) & (((X410 @ id @ (sub @ X409 @ (push @ (sK326 @ X410 @ X409) @ id)) @ id)) != $true)) | (! [X413 : term] : (($true != ((X410 @ id @ X413 @ id))) | (((X410 @ id @ (sK327 @ X410 @ id @ X413) @ id)) = $true)) & (((X410 @ id @ (lam @ (sK327 @ X410 @ sh @ one)) @ id)) != $true) & ! [X414 : subst,X415 : subst,X416 : term] : (((sub @ (sK327 @ X410 @ X415 @ X416) @ X414)) = ((sK327 @ X410 @ (comp @ X415 @ X414) @ (sub @ X416 @ X414))))) | ($true = ((X410 @ id @ (lam @ (sub @ X409 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | (! [X419 : term] : (($true != ((sK329 @ id @ X419 @ id))) | (((sK329 @ id @ (sub @ sK328 @ (push @ X419 @ id)) @ id)) = $true)) & ! [X420 : (subst > term > term)] : ((($true = ((sK329 @ id @ (sK330 @ X420) @ id))) & (((sK329 @ id @ (X420 @ id @ (sK330 @ X420)) @ id)) != $true)) | ($true = ((sK329 @ id @ (lam @ (X420 @ sh @ one)) @ id))) | (((sub @ (X420 @ (sK332 @ X420) @ (sK333 @ X420)) @ (sK331 @ X420))) != ((X420 @ (comp @ (sK332 @ X420) @ (sK331 @ X420)) @ (sub @ (sK333 @ X420) @ (sK331 @ X420)))))) & ($true != ((sK329 @ id @ (lam @ (sub @ sK328 @ (push @ one @ sh))) @ id))))) & ((induction2lem = $true) | (! [X428 : term] : ((($true != ((sK335 @ (sub @ X428 @ (push @ (sK337 @ X428) @ id))))) & (((sK335 @ (sK337 @ X428))) = $true)) | (((sK335 @ (lam @ X428))) = $true)) & (((sK335 @ (sub @ sK336 @ sK334))) != $true) & ! [X430 : term,X431 : term] : ((((sK335 @ X430)) != $true) | ($true != ((sK335 @ X431))) | ($true = ((sK335 @ (ap @ X430 @ X431))))) & ! [X432 : term] : (($true = ((sK335 @ (sub @ X432 @ sK334)))) | ($true != ((var @ X432)))))) & (! [X433 : subst,X434 : (term > $o),X435 : term] : ((! [X437 : term] : (($true = ((X434 @ (sub @ (sK338 @ X434) @ (push @ X437 @ id))))) | (((X434 @ X437)) != $true)) & (((X434 @ (lam @ (sK338 @ X434)))) != $true)) | (((X434 @ (sub @ X435 @ X433))) = $true) | ((((X434 @ (sK339 @ X434))) = $true) & (((X434 @ (sK340 @ X434))) = $true) & ($true != ((X434 @ (ap @ (sK339 @ X434) @ (sK340 @ X434)))))) | ((((X434 @ (sub @ (sK341 @ X434 @ X433) @ X433))) != $true) & ($true = ((var @ (sK341 @ X434 @ X433)))))) | (induction2lem != $true)) & ((hoasinduction = $true) | (! [X443 : (subst > term > term)] : ((((sK342 @ id @ (lam @ (X443 @ sh @ one)) @ id)) = $true) | (((X443 @ (comp @ (sK345 @ X443) @ (sK344 @ X443)) @ (sub @ (sK346 @ X443) @ (sK344 @ X443)))) != ((sub @ (X443 @ (sK345 @ X443) @ (sK346 @ X443)) @ (sK344 @ X443)))) | (($true != ((sK342 @ id @ (X443 @ id @ (sK347 @ X443)) @ id))) & (((sK342 @ id @ (sK347 @ X443) @ id)) = $true))) & (((sP6 @ sK342)) != $true) & ! [X448 : term,X449 : subst,X450 : subst,X451 : subst] : (($true = ((sK342 @ (comp @ X451 @ X450) @ (sub @ X448 @ X450) @ X449))) | ($true != ((sK342 @ X451 @ X448 @ (comp @ X450 @ X449))))) & ! [X452 : term,X453 : subst,X454 : subst,X455 : subst] : (($true = ((sK342 @ X454 @ X452 @ (comp @ X453 @ X455)))) | ($true != ((sK342 @ (comp @ X454 @ X453) @ (sub @ X452 @ X453) @ X455)))) & ! [X456 : term] : (($true = ((sK342 @ id @ X456 @ id))) | ($true != ((var @ (sub @ X456 @ id))))) & (((sK342 @ id @ sK343 @ id)) != $true))) & (! [X457 : (subst > term > subst > $o),X458 : term] : ((($true != ((X457 @ id @ (lam @ (sK348 @ X457 @ sh @ one)) @ id))) & ! [X460 : subst,X461 : subst,X462 : term] : (((sK348 @ X457 @ (comp @ X461 @ X460) @ (sub @ X462 @ X460))) = ((sub @ (sK348 @ X457 @ X461 @ X462) @ X460))) & ! [X463 : term] : (($true = ((X457 @ id @ (sK348 @ X457 @ id @ X463) @ id))) | ($true != ((X457 @ id @ X463 @ id))))) | ($true = ((sP6 @ X457))) | ((((X457 @ (comp @ (sK352 @ X457) @ (sK351 @ X457)) @ (sub @ (sK349 @ X457) @ (sK351 @ X457)) @ (sK350 @ X457))) != $true) & ($true = ((X457 @ (sK352 @ X457) @ (sK349 @ X457) @ (comp @ (sK351 @ X457) @ (sK350 @ X457)))))) | (($true != ((X457 @ (sK355 @ X457) @ (sK353 @ X457) @ (comp @ (sK354 @ X457) @ (sK356 @ X457))))) & ($true = ((X457 @ (comp @ (sK355 @ X457) @ (sK354 @ X457)) @ (sub @ (sK353 @ X457) @ (sK354 @ X457)) @ (sK356 @ X457))))) | (($true != ((X457 @ id @ (sK357 @ X457) @ id))) & ($true = ((var @ (sub @ (sK357 @ X457) @ id))))) | ($true = ((X457 @ id @ X458 @ id)))) | (hoasinduction != $true)) & (pushprop = $true) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (! [X473 : (subst > term > subst > $o),X474 : term] : ((($true = ((X473 @ id @ (sK358 @ X474 @ X473) @ id))) & ($true != ((X473 @ id @ (sub @ X474 @ (push @ (sK358 @ X474 @ X473) @ id)) @ id)))) | (($true = ((X473 @ (comp @ (sK360 @ X473) @ (sK362 @ X473)) @ (sub @ (sK361 @ X473) @ (sK362 @ X473)) @ (sK359 @ X473)))) & ($true != ((X473 @ (sK360 @ X473) @ (sK361 @ X473) @ (comp @ (sK362 @ X473) @ (sK359 @ X473)))))) | (! [X481 : term] : (($true != ((X473 @ id @ X481 @ id))) | ($true = ((X473 @ id @ (sK363 @ X473 @ id @ X481) @ id)))) & ! [X482 : subst,X483 : subst,X484 : term] : (((sK363 @ X473 @ (comp @ X482 @ X483) @ (sub @ X484 @ X483))) = ((sub @ (sK363 @ X473 @ X482 @ X484) @ X483))) & ($true != ((X473 @ id @ (lam @ (sK363 @ X473 @ sh @ one)) @ id)))) | (((X473 @ id @ (lam @ X474) @ id)) = $true) | ((((X473 @ (comp @ (sK364 @ X473) @ (sK366 @ X473)) @ (sub @ (sK367 @ X473) @ (sK366 @ X473)) @ (sK365 @ X473))) != $true) & (((X473 @ (sK364 @ X473) @ (sK367 @ X473) @ (comp @ (sK366 @ X473) @ (sK365 @ X473)))) = $true))) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem3 = $true) | (! [X491 : term] : (($true != ((sK368 @ id @ X491 @ id))) | (((sK368 @ id @ (sub @ sK369 @ (push @ X491 @ id)) @ id)) = $true)) & ! [X492 : subst,X493 : subst,X494 : term,X495 : subst] : (($true != ((sK368 @ (comp @ X493 @ X495) @ (sub @ X494 @ X495) @ X492))) | (((sK368 @ X493 @ X494 @ (comp @ X495 @ X492))) = $true)) & ! [X496 : (subst > term > term)] : ((($true = ((sK368 @ id @ (sK370 @ X496) @ id))) & ($true != ((sK368 @ id @ (X496 @ id @ (sK370 @ X496)) @ id)))) | (((sub @ (X496 @ (sK371 @ X496) @ (sK373 @ X496)) @ (sK372 @ X496))) != ((X496 @ (comp @ (sK371 @ X496) @ (sK372 @ X496)) @ (sub @ (sK373 @ X496) @ (sK372 @ X496))))) | (((sK368 @ id @ (lam @ (X496 @ sh @ one)) @ id)) = $true)) & ($true != ((sK368 @ id @ (lam @ sK369) @ id))) & ! [X501 : subst,X502 : subst,X503 : subst,X504 : term] : (($true = ((sK368 @ (comp @ X501 @ X503) @ (sub @ X504 @ X503) @ X502))) | (((sK368 @ X501 @ X504 @ (comp @ X503 @ X502))) != $true)))) & (hoaslamnotvar_gthm = $true) & (! [X505 : term] : (((sub @ X505 @ id)) = X505) | (axvarid != $true)) & ((axvarid = $true) | (sK374 != ((sub @ sK374 @ id)))) & (! [X507 : subst] : (((comp @ id @ X507)) = X507) | (axidl != $true)) & ((axidl = $true) | (sK375 != ((comp @ id @ sK375)))) & (pushprop_gthm = $true) & ((hoasinduction_lem0 = $true) | ! [X510 : (term > $o)] : (((X510 @ (sK377 @ X510))) != ((sK376 @ id @ (sK377 @ X510) @ id)))) & (! [X512 : (subst > term > subst > $o)] : ! [X514 : term] : (((sK378 @ X512 @ X514)) = ((X512 @ id @ X514 @ id))) | (hoasinduction_lem0 != $true)) & (! [X515 : term] : (((sK379 @ X515 @ sh @ one)) = ((sub @ X515 @ (push @ one @ sh)))) | (hoasinduction_lem3b_lthm != $true)) & ((hoasinduction_lem3b_lthm = $true) | ! [X518 : (subst > term > term)] : (((sub @ sK380 @ (push @ one @ sh))) != ((X518 @ sh @ one)))) & (! [X519 : (term > $o),X520 : term,X521 : (term > $o),X522 : term,X523 : subst] : (($true != ((X519 @ X522))) | ($true = ((X521 @ (sub @ X522 @ (push @ X520 @ X523)))))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | (($true = ((sK381 @ sK384))) & ($true != ((sK383 @ (sub @ sK384 @ (push @ sK382 @ sK385))))))) & (! [X529 : term,X530 : term,X531 : term,X532 : term] : ((X529 = X532) | (((ap @ (sub @ X531 @ id) @ X532)) != ((ap @ (sub @ X530 @ id) @ X529)))) | (hoasapinj2 != $true)) & ((hoasapinj2 = $true) | ((sK386 != sK389) & (((ap @ (sub @ sK388 @ id) @ sK389)) = ((ap @ (sub @ sK387 @ id) @ sK386))))) & (! [X537 : (term > $o),X538 : term] : (($true = ((X537 @ X538))) | ((((X537 @ (sK390 @ X537))) = $true) & ($true = ((X537 @ (sK391 @ X537)))) & ($true != ((X537 @ (ap @ (sK390 @ X537) @ (sK391 @ X537)))))) | (($true = ((X537 @ (sK392 @ X537)))) & ($true != ((X537 @ (lam @ (sK392 @ X537)))))) | (($true != ((X537 @ (sK393 @ X537)))) & (((var @ (sK393 @ X537))) = $true))) | (induction != $true)) & ((induction = $true) | (($true != ((sK394 @ sK395))) & ! [X545 : term,X546 : term] : (($true != ((sK394 @ X545))) | ($true != ((sK394 @ X546))) | (((sK394 @ (ap @ X545 @ X546))) = $true)) & ! [X547 : term] : ((((sK394 @ X547)) != $true) | (((sK394 @ (lam @ X547))) = $true)) & ! [X548 : term] : ((((sK394 @ X548)) = $true) | ($true != ((var @ X548)))))) & (termmset_gthm = $true) & ((substmonoid = $true) | (((comp @ sK396 @ id)) != sK396) | (sK397 != ((comp @ id @ sK397)))) & ((! [X551 : subst] : (((comp @ X551 @ id)) = X551) & ! [X552 : subst] : (((comp @ id @ X552)) = X552)) | (substmonoid != $true)) & (hoasinduction_lem1v2 = $true) & (axmap = $true) & (! [X553 : (subst > term > term),X554 : (subst > term > term),X555 : subst,X556 : term] : ((((sub @ (X554 @ (sK400 @ X554) @ (sK399 @ X554)) @ (sK398 @ X554))) != ((X554 @ (comp @ (sK400 @ X554) @ (sK398 @ X554)) @ (sub @ (sK399 @ X554) @ (sK398 @ X554))))) | (((sub @ (X553 @ (sK401 @ X553) @ (sK402 @ X553)) @ (sK403 @ X553))) != ((X553 @ (comp @ (sK401 @ X553) @ (sK403 @ X553)) @ (sub @ (sK402 @ X553) @ (sK403 @ X553))))) | (((lam @ (X554 @ sh @ one))) != ((lam @ (X553 @ sh @ one)))) | (((X554 @ X555 @ X556)) = ((X553 @ X555 @ X556)))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | (! [X567 : subst,X568 : term,X569 : subst] : (((sK405 @ (comp @ X569 @ X567) @ (sub @ X568 @ X567))) = ((sub @ (sK405 @ X569 @ X568) @ X567))) & ! [X570 : subst,X571 : term,X572 : subst] : (((sub @ (sK404 @ X570 @ X571) @ X572)) = ((sK404 @ (comp @ X570 @ X572) @ (sub @ X571 @ X572)))) & (((lam @ (sK405 @ sh @ one))) = ((lam @ (sK404 @ sh @ one)))) & (((sK404 @ sK406 @ sK407)) != ((sK405 @ sK406 @ sK407))))) & ((((sub @ sK408 @ id)) != sK408) | ! [X574 : term] : (((sub @ X574 @ id)) = X574) | (termmset_lthm != $true)) & ((termmset_lthm = $true) | (! [X575 : term] : (((sub @ X575 @ id)) = X575) & (sK409 != ((sub @ sK409 @ id))))) & (hoasapnotvar_gthm = $true) & ((hoasinduction_lem3v2_f = $true) | ! [X578 : (subst > term > term)] : (((sub @ sK410 @ (push @ (sK412 @ X578) @ (sK411 @ X578)))) != ((X578 @ (sK411 @ X578) @ (sK412 @ X578))))) & (! [X581 : term] : ! [X583 : subst,X584 : term] : (((sK413 @ X581 @ X583 @ X584)) = ((sub @ X581 @ (push @ X584 @ X583)))) | (hoasinduction_lem3v2_f != $true)) & (apnotvar = $true) & ((axscons = $true) | (((push @ (sub @ one @ sK414) @ (comp @ sh @ sK414))) != sK414)) & (! [X586 : subst] : (((push @ (sub @ one @ X586) @ (comp @ sh @ X586))) = X586) | (axscons != $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lem2v2_lthm = $true) & (axabs = $true) & ((hoasinduction_lem2 = $true) | (! [X590 : term,X591 : term] : ((((sK417 @ id @ X591 @ id)) != $true) | ($true != ((sK417 @ id @ X590 @ id))) | ($true = ((sK417 @ id @ (ap @ (sub @ X591 @ id) @ X590) @ id)))) & ($true != ((sK417 @ id @ (ap @ sK415 @ sK416) @ id))) & ! [X592 : term,X593 : subst,X594 : subst,X595 : subst] : (($true = ((sK417 @ (comp @ X595 @ X593) @ (sub @ X592 @ X593) @ X594))) | (((sK417 @ X595 @ X592 @ (comp @ X593 @ X594))) != $true)) & ! [X596 : subst,X597 : term,X598 : subst,X599 : subst] : (($true != ((sK417 @ (comp @ X598 @ X599) @ (sub @ X597 @ X599) @ X596))) | ($true = ((sK417 @ X598 @ X597 @ (comp @ X599 @ X596))))) & ($true = ((sK417 @ id @ sK415 @ id))) & (((sK417 @ id @ sK416 @ id)) = $true))) & (! [X600 : term,X601 : term,X602 : (subst > term > subst > $o)] : ((($true = ((X602 @ id @ (sK419 @ X602) @ id))) & ($true = ((X602 @ id @ (sK418 @ X602) @ id))) & ($true != ((X602 @ id @ (ap @ (sub @ (sK419 @ X602) @ id) @ (sK418 @ X602)) @ id)))) | (((X602 @ id @ (ap @ X600 @ X601) @ id)) = $true) | (($true != ((X602 @ (comp @ (sK423 @ X602) @ (sK421 @ X602)) @ (sub @ (sK420 @ X602) @ (sK421 @ X602)) @ (sK422 @ X602)))) & (((X602 @ (sK423 @ X602) @ (sK420 @ X602) @ (comp @ (sK421 @ X602) @ (sK422 @ X602)))) = $true)) | ((((X602 @ (comp @ (sK426 @ X602) @ (sK427 @ X602)) @ (sub @ (sK425 @ X602) @ (sK427 @ X602)) @ (sK424 @ X602))) = $true) & (((X602 @ (sK426 @ X602) @ (sK425 @ X602) @ (comp @ (sK427 @ X602) @ (sK424 @ X602)))) != $true)) | ($true != ((X602 @ id @ X600 @ id))) | (((X602 @ id @ X601 @ id)) != $true)) | (hoasinduction_lem2 != $true)) & (hoaslamnotap_gthm = $true) & ((hoasinduction_lem3aaa = $true) | (($true != ((sK429 @ id @ (lam @ (sub @ sK428 @ (push @ one @ sh))) @ id))) & ! [X615 : term] : (($true != ((sK429 @ id @ X615 @ id))) | (((sK429 @ id @ (sub @ sK428 @ (push @ X615 @ id)) @ id)) = $true)) & ! [X616 : (subst > term > term),X617 : term] : ((((sub @ X617 @ (push @ (sub @ (sK430 @ X617 @ X616) @ (sK432 @ X617 @ X616)) @ (comp @ (sK431 @ X617 @ X616) @ (sK432 @ X617 @ X616))))) != ((X616 @ (comp @ (sK431 @ X617 @ X616) @ (sK432 @ X617 @ X616)) @ (sub @ (sK430 @ X617 @ X616) @ (sK432 @ X617 @ X616))))) | (($true != ((sK429 @ id @ (X616 @ id @ (sK433 @ X616)) @ id))) & ($true = ((sK429 @ id @ (sK433 @ X616) @ id)))) | ($true = ((sK429 @ id @ (lam @ (X616 @ sh @ one)) @ id))) | (((sub @ (sub @ X617 @ (push @ (sK434 @ X617 @ X616) @ (sK435 @ X617 @ X616))) @ (sK436 @ X617 @ X616))) != ((sub @ (X616 @ (sK435 @ X617 @ X616) @ (sK434 @ X617 @ X616)) @ (sK436 @ X617 @ X616))))))) & (! [X625 : term,X626 : (subst > term > subst > $o)] : ((((X626 @ id @ (lam @ (sub @ X625 @ (push @ one @ sh))) @ id)) = $true) | ((((X626 @ id @ (sK437 @ X626 @ X625) @ id)) = $true) & ($true != ((X626 @ id @ (sub @ X625 @ (push @ (sK437 @ X626 @ X625) @ id)) @ id)))) | (! [X630 : term,X631 : subst,X632 : subst] : (((sK438 @ X626 @ (comp @ X631 @ X632) @ (sub @ X630 @ X632))) = ((sub @ (sK439 @ X626) @ (push @ (sub @ X630 @ X632) @ (comp @ X631 @ X632))))) & ! [X633 : term] : (($true = ((X626 @ id @ (sK438 @ X626 @ id @ X633) @ id))) | ($true != ((X626 @ id @ X633 @ id)))) & ($true != ((X626 @ id @ (lam @ (sK438 @ X626 @ sh @ one)) @ id))) & ! [X634 : term,X635 : subst,X636 : subst] : (((sub @ (sub @ (sK439 @ X626) @ (push @ X634 @ X635)) @ X636)) = ((sub @ (sK438 @ X626 @ X635 @ X634) @ X636))))) | (hoasinduction_lem3aaa != $true)) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (axclos = $true) & (! [X637 : term,X638 : term] : ((X637 = X638) | (((sub @ X638 @ sh)) != ((sub @ X637 @ sh)))) | (shinj != $true)) & ((shinj = $true) | ((sK440 != sK441) & (((sub @ sK441 @ sh)) = ((sub @ sK440 @ sh))))) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (ulamvar1 != $true) & (hoasinduction_lem1_lthm = $true) & ((((sub @ sK442 @ id)) != sK442) | ($true = sP5) | (! [X644 : (subst > term > term)] : ((((X644 @ (comp @ (sK445 @ X644) @ (sK446 @ X644)) @ (sub @ (sK447 @ X644) @ (sK446 @ X644)))) != ((sub @ (X644 @ (sK445 @ X644) @ (sK447 @ X644)) @ (sK446 @ X644)))) | (($true = ((sK443 @ id @ (sK448 @ X644) @ id))) & (((sK443 @ id @ (X644 @ id @ (sK448 @ X644)) @ id)) != $true)) | ($true = ((sK443 @ id @ (lam @ (X644 @ sh @ one)) @ id)))) & ! [X649 : term] : ((((sK443 @ id @ X649 @ id)) != $true) | (((sK443 @ id @ (sub @ sK444 @ (push @ X649 @ id)) @ id)) = $true)) & (((sK443 @ id @ (lam @ (sub @ sK444 @ (push @ one @ sh))) @ id)) != $true)) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X650 : term] : (((sub @ X650 @ id)) = X650) & ($true != sP5) & ! [X651 : (subst > term > subst > $o),X652 : term] : ((! [X654 : subst,X655 : subst,X656 : term] : (((sub @ (sK449 @ X651 @ X654 @ X656) @ X655)) = ((sK449 @ X651 @ (comp @ X654 @ X655) @ (sub @ X656 @ X655)))) & ! [X657 : term] : (($true != ((X651 @ id @ X657 @ id))) | ($true = ((X651 @ id @ (sK449 @ X651 @ id @ X657) @ id)))) & ($true != ((X651 @ id @ (lam @ (sK449 @ X651 @ sh @ one)) @ id)))) | (($true = ((X651 @ id @ (sK450 @ X652 @ X651) @ id))) & (((X651 @ id @ (sub @ X652 @ (push @ (sK450 @ X652 @ X651) @ id)) @ id)) != $true)) | ($true = ((X651 @ id @ (lam @ (sub @ X652 @ (push @ one @ sh))) @ id)))))) & (hoasinduction_lem3a_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ! [X659 : d_term] : (d_one = X659) & ((hoasinduction_lem3a_lthm = $true) | ((! [X662 : term] : (($true = ((sK452 @ id @ (sub @ sK451 @ (push @ X662 @ id)) @ id))) | (((sK452 @ id @ X662 @ id)) != $true)) & ($true != ((sK452 @ id @ (lam @ sK451) @ id))) & ! [X663 : (subst > term > term)] : (($true = ((sK452 @ id @ (lam @ (X663 @ sh @ one)) @ id))) | (($true != ((sK452 @ id @ (X663 @ id @ (sK453 @ X663)) @ id))) & (((sK452 @ id @ (sK453 @ X663) @ id)) = $true)) | (((X663 @ (comp @ (sK455 @ X663) @ (sK454 @ X663)) @ (sub @ (sK456 @ X663) @ (sK454 @ X663)))) != ((sub @ (X663 @ (sK455 @ X663) @ (sK456 @ X663)) @ (sK454 @ X663)))))) & ! [X668 : term] : (((sub @ X668 @ id)) = X668) & ! [X669 : (subst > term > subst > $o),X670 : term] : (((((X669 @ id @ (lam @ (sK457 @ X669 @ sh @ one)) @ id)) != $true) & ! [X672 : term] : ((((X669 @ id @ X672 @ id)) != $true) | ($true = ((X669 @ id @ (sK457 @ X669 @ id @ X672) @ id)))) & ! [X673 : term,X674 : subst,X675 : subst] : (((sub @ (sK457 @ X669 @ X675 @ X673) @ X674)) = ((sK457 @ X669 @ (comp @ X675 @ X674) @ (sub @ X673 @ X674))))) | (((X669 @ id @ (lam @ (sub @ X670 @ (push @ one @ sh))) @ id)) = $true) | (($true = ((X669 @ id @ (sK458 @ X670 @ X669) @ id))) & (((X669 @ id @ (sub @ X670 @ (push @ (sK458 @ X670 @ X669) @ id)) @ id)) != $true))))) & (! [X677 : term,X678 : (subst > term > subst > $o)] : (((((X678 @ id @ (sub @ X677 @ (push @ (sK459 @ X678 @ X677) @ id)) @ id)) != $true) & ($true = ((X678 @ id @ (sK459 @ X678 @ X677) @ id)))) | ($true = ((X678 @ id @ (lam @ X677) @ id))) | ((((X678 @ id @ (lam @ (sK460 @ X678 @ sh @ one)) @ id)) != $true) & ! [X681 : term] : ((((X678 @ id @ (sK460 @ X678 @ id @ X681) @ id)) = $true) | ($true != ((X678 @ id @ X681 @ id)))) & ! [X682 : subst,X683 : subst,X684 : term] : (((sub @ (sK460 @ X678 @ X683 @ X684) @ X682)) = ((sK460 @ X678 @ (comp @ X683 @ X682) @ (sub @ X684 @ X682)))))) | (((sub @ sK461 @ id)) != sK461) | (! [X688 : (subst > term > term)] : (($true = ((sK462 @ id @ (lam @ (X688 @ sh @ one)) @ id))) | ((((sK462 @ id @ (sK464 @ X688) @ id)) = $true) & ($true != ((sK462 @ id @ (X688 @ id @ (sK464 @ X688)) @ id)))) | (((X688 @ (comp @ (sK467 @ X688) @ (sK466 @ X688)) @ (sub @ (sK465 @ X688) @ (sK466 @ X688)))) != ((sub @ (X688 @ (sK467 @ X688) @ (sK465 @ X688)) @ (sK466 @ X688))))) & ($true != ((sK462 @ id @ (lam @ (sub @ sK463 @ (push @ one @ sh))) @ id))) & ! [X693 : term] : ((((sK462 @ id @ X693 @ id)) != $true) | (((sK462 @ id @ (sub @ sK463 @ (push @ X693 @ id)) @ id)) = $true))) | (hoasinduction_lem3a_lthm != $true)) & (! [X694 : subst,X695 : term] : (((sub @ one @ (push @ X695 @ X694))) = X695) | (axvarcons != $true)) & ((axvarcons = $true) | (((sub @ one @ (push @ sK469 @ sK468))) != sK469)) & (hoaslamnotvar = $true) & (hoasinduction_lem3_gthm = $true) & ((hoasapinj2_lthm = $true) | (! [X698 : term,X699 : term,X700 : term,X701 : term] : ((X698 = X701) | (((ap @ X700 @ X698)) != ((ap @ X699 @ X701)))) & ((sK470 != sK473) & (((ap @ (sub @ sK471 @ id) @ sK473)) = ((ap @ (sub @ sK472 @ id) @ sK470)))))) & (((sK477 != sK474) & (((ap @ sK476 @ sK474)) = ((ap @ sK475 @ sK477)))) | ! [X710 : term,X711 : term,X712 : term,X713 : term] : ((X710 = X713) | (((ap @ (sub @ X711 @ id) @ X713)) != ((ap @ (sub @ X712 @ id) @ X710)))) | (hoasapinj2_lthm != $true)) & ((hoasinduction_lthm_3 = $true) | (! [X714 : (term > $o),X715 : term,X716 : (subst > term > subst > $o)] : (($true = ((X714 @ (lam @ X715)))) | (($true != ((X714 @ (sub @ X715 @ (push @ (sK478 @ X715 @ X714) @ id))))) & (((X714 @ (sK478 @ X715 @ X714))) = $true)) | (! [X719 : term] : (($true != ((X716 @ id @ X719 @ id))) | (((X716 @ id @ (sK479 @ X716 @ id @ X719) @ id)) = $true)) & ($true != ((X716 @ id @ (lam @ (sK479 @ X716 @ sh @ one)) @ id))) & ! [X720 : subst,X721 : subst,X722 : term] : (((sK479 @ X716 @ (comp @ X720 @ X721) @ (sub @ X722 @ X721))) = ((sub @ (sK479 @ X716 @ X720 @ X722) @ X721)))) | (((X716 @ id @ (sK480 @ X716 @ X714) @ id)) != ((X714 @ (sK480 @ X716 @ X714))))) & ! [X724 : term,X725 : (term > $o)] : ((($true = ((X725 @ (sK482 @ X725)))) & ($true != ((X725 @ (ap @ (sK482 @ X725) @ (sK481 @ X725))))) & ($true = ((X725 @ (sK481 @ X725))))) | (($true != ((X725 @ (sK483 @ X725)))) & ($true = ((var @ (sK483 @ X725))))) | (($true != ((X725 @ (lam @ (sK484 @ X725))))) & ! [X730 : term] : ((((X725 @ (sub @ (sK484 @ X725) @ (push @ X730 @ id)))) = $true) | (((X725 @ X730)) != $true))) | (((X725 @ X724)) = $true)) & ($true != sP4) & ! [X731 : (subst > term > subst > $o)] : ! [X733 : term] : (((X731 @ id @ X733 @ id)) = ((sK485 @ X731 @ X733))) & ! [X734 : term] : (((sub @ X734 @ id)) = X734))) & ((($true != ((sK486 @ (lam @ sK487)))) & ! [X738 : term] : (($true = ((sK486 @ (sub @ sK487 @ (push @ X738 @ id))))) | ($true != ((sK486 @ X738)))) & ! [X739 : (subst > term > term)] : ((($true = ((sK488 @ id @ (sK489 @ X739) @ id))) & (((sK488 @ id @ (X739 @ id @ (sK489 @ X739)) @ id)) != $true)) | (((sK488 @ id @ (lam @ (X739 @ sh @ one)) @ id)) = $true) | (((X739 @ (comp @ (sK490 @ X739) @ (sK491 @ X739)) @ (sub @ (sK492 @ X739) @ (sK491 @ X739)))) != ((sub @ (X739 @ (sK490 @ X739) @ (sK492 @ X739)) @ (sK491 @ X739))))) & ! [X744 : term] : (((sK488 @ id @ X744 @ id)) = ((sK486 @ X744)))) | (! [X747 : term,X748 : term] : (($true != ((sK494 @ X748))) | (((sK494 @ (ap @ X748 @ X747))) = $true) | ($true != ((sK494 @ X747)))) & ! [X749 : term] : ((((sK494 @ X749)) = $true) | (((var @ X749)) != $true)) & ! [X750 : term] : ((((sK494 @ (lam @ X750))) = $true) | (($true != ((sK494 @ (sub @ X750 @ (push @ (sK495 @ X750) @ id))))) & (((sK494 @ (sK495 @ X750))) = $true))) & (((sK494 @ sK493)) != $true)) | ($true = sP4) | ! [X753 : (term > $o)] : (((X753 @ (sK497 @ X753))) != ((sK496 @ id @ (sK497 @ X753) @ id))) | (((sub @ sK498 @ id)) != sK498) | (hoasinduction_lthm_3 != $true)) & (substmonoid_gthm = $true) & (! [X756 : term] : ! [X758 : term,X759 : subst] : (((sK499 @ X756 @ X759 @ X758)) = ((sub @ X756 @ (push @ X758 @ X759)))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ! [X761 : (subst > term > term)] : (((X761 @ (sK502 @ X761) @ (sK501 @ X761))) != ((sub @ sK500 @ (push @ (sK501 @ X761) @ (sK502 @ X761)))))) & (axassoc = $true) & (! [X764 : subst,X765 : (term > $o),X766 : term] : ! [X768 : term] : (((X765 @ (sub @ X768 @ (push @ X766 @ X764)))) = ((sK503 @ X766 @ X765 @ X764 @ X768))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ! [X772 : (term > $o)] : (((sK505 @ (sub @ (sK507 @ X772) @ (push @ sK506 @ sK504)))) != ((X772 @ (sK507 @ X772))))) & (! [X774 : term,X775 : term,X776 : term,X777 : term] : ((((ap @ (sub @ X775 @ id) @ X776)) != ((ap @ (sub @ X774 @ id) @ X777))) | (X774 = X775)) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ((((ap @ (sub @ sK509 @ id) @ sK510)) = ((ap @ (sub @ sK508 @ id) @ sK511))) & (sK508 != sK509))) & (hoasapnotvar = $true) & ((hoasinduction_lthm = $true) | (! [X782 : term,X783 : (subst > term > subst > $o),X784 : term] : ((($true = ((X783 @ (comp @ (sK513 @ X783) @ (sK514 @ X783)) @ (sub @ (sK512 @ X783) @ (sK514 @ X783)) @ (sK515 @ X783)))) & ($true != ((X783 @ (sK513 @ X783) @ (sK512 @ X783) @ (comp @ (sK514 @ X783) @ (sK515 @ X783)))))) | (((X783 @ id @ X782 @ id)) != $true) | ((((X783 @ id @ (sK517 @ X783) @ id)) = $true) & ($true = ((X783 @ id @ (sK516 @ X783) @ id))) & ($true != ((X783 @ id @ (ap @ (sub @ (sK516 @ X783) @ id) @ (sK517 @ X783)) @ id)))) | (($true = ((X783 @ (sK520 @ X783) @ (sK519 @ X783) @ (comp @ (sK521 @ X783) @ (sK518 @ X783))))) & (((X783 @ (comp @ (sK520 @ X783) @ (sK521 @ X783)) @ (sub @ (sK519 @ X783) @ (sK521 @ X783)) @ (sK518 @ X783))) != $true)) | ($true = ((X783 @ id @ (ap @ X784 @ X782) @ id))) | (((X783 @ id @ X784 @ id)) != $true)) & ! [X795 : (term > $o),X796 : term] : (((((X795 @ (lam @ (sK522 @ X795)))) != $true) & ! [X798 : term] : (($true != ((X795 @ X798))) | (((X795 @ (sub @ (sK522 @ X795) @ (push @ X798 @ id)))) = $true))) | (($true = ((var @ (sK523 @ X795)))) & ($true != ((X795 @ (sK523 @ X795))))) | ((((X795 @ (ap @ (sK525 @ X795) @ (sK524 @ X795)))) != $true) & (((X795 @ (sK524 @ X795))) = $true) & ($true = ((X795 @ (sK525 @ X795))))) | (((X795 @ X796)) = $true)) & (sP2 != $true) & ($true != sP1))) & ((! [X805 : term,X806 : subst,X807 : subst,X808 : subst] : ((((sK527 @ (comp @ X806 @ X807) @ (sub @ X805 @ X807) @ X808)) != $true) | (((sK527 @ X806 @ X805 @ (comp @ X807 @ X808))) = $true)) & ($true = ((sK527 @ id @ sK526 @ id))) & ! [X809 : term,X810 : term] : (($true != ((sK527 @ id @ X810 @ id))) | (((sK527 @ id @ X809 @ id)) != $true) | (((sK527 @ id @ (ap @ (sub @ X809 @ id) @ X810) @ id)) = $true)) & ! [X811 : subst,X812 : term,X813 : subst,X814 : subst] : ((((sK527 @ X813 @ X812 @ (comp @ X814 @ X811))) != $true) | ($true = ((sK527 @ (comp @ X813 @ X814) @ (sub @ X812 @ X814) @ X811)))) & (((sK527 @ id @ (ap @ sK528 @ sK526) @ id)) != $true) & (((sK527 @ id @ sK528 @ id)) = $true)) | (! [X817 : term] : (($true = ((sK529 @ (lam @ X817)))) | (($true = ((sK529 @ (sK531 @ X817)))) & ($true != ((sK529 @ (sub @ X817 @ (push @ (sK531 @ X817) @ id))))))) & ! [X819 : term] : (($true != ((var @ X819))) | ($true = ((sK529 @ X819)))) & ! [X820 : term,X821 : term] : (($true = ((sK529 @ (ap @ X821 @ X820)))) | ($true != ((sK529 @ X820))) | ($true != ((sK529 @ X821)))) & ($true != ((sK529 @ sK530)))) | (sP2 = $true) | ($true = sP1) | (hoasinduction_lthm != $true)) & (! [X822 : term] : (((sub @ X822 @ id)) = X822) | (termmset != $true)) & ((termmset = $true) | (((sub @ sK532 @ id)) != sK532)) & (ulamvarsh = $true) & (id = ((d2subst @ d_id))) & (! [X824 : term] : (((sK533 @ X824 @ sh @ one)) = ((sub @ X824 @ (push @ one @ sh)))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ! [X827 : (subst > term > term)] : (((sub @ sK534 @ (push @ one @ sh))) != ((X827 @ sh @ one)))) & (! [X828 : (term > $o),X829 : term] : (($true = ((X828 @ X829))) | (! [X831 : term] : (($true = ((X828 @ (sub @ (sK535 @ X828) @ (push @ X831 @ id))))) | ($true != ((X828 @ X831)))) & (((X828 @ (lam @ (sK535 @ X828)))) != $true)) | ((((X828 @ (ap @ (sK536 @ X828) @ (sK537 @ X828)))) != $true) & ($true = ((X828 @ (sK537 @ X828)))) & (((X828 @ (sK536 @ X828))) = $true)) | (($true != ((X828 @ (sK538 @ X828)))) & ($true = ((var @ (sK538 @ X828)))))) | (induction2 != $true)) & ((induction2 = $true) | (($true != ((sK539 @ sK540))) & ! [X837 : term] : (((((sK539 @ (sub @ X837 @ (push @ (sK541 @ X837) @ id)))) != $true) & (((sK539 @ (sK541 @ X837))) = $true)) | ($true = ((sK539 @ (lam @ X837))))) & ! [X839 : term,X840 : term] : (($true = ((sK539 @ (ap @ X839 @ X840)))) | (((sK539 @ X840)) != $true) | (((sK539 @ X839)) != $true)) & ! [X841 : term] : (($true = ((sK539 @ X841))) | ($true != ((var @ X841)))))) & (pushprop_lthm_orig = $true) & (lamnotvar = $true) & (hoasinduction_lem3v2_gthm = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasinduction_lem1_gthm = $true)),
  inference(skolemize,[status(esa),new_symbols(skolem,[sK124,sK125,sK126,vAPP,sK142,vAPP,sK146,sK147,sK148,sK149,sK150,sK151,vAPP,sK170,sK171,vAPP,sK176,sK177,sK178,vAPP,sK187,sK188,vAPP,sK191,sK192,sK193,vAPP,sK196,vAPP,sK198,sK199,sK200,sK201,sK202,sK203,vAPP,sK205,sK206,sK207,sK208,sK209,sK210,vAPP,sK217,sK218,sK219,sK220,vAPP,sK222,vAPP,sK225,sK226,sK227,sK228,sK229,sK230,sK231,sK232,sK233,sK234,sK235,sK236,sK237,sK238,sK239,sK240,sK241,sK242,sK243,sK244,sK245,vAPP,sK257,sK258,sK259,sK260,sK261,sK262,sK263,sK264,sK265,sK266,vAPP,sK274,sK275,sK276,sK277,vAPP,sK280,sK281,vAPP,sK286,sK287,sK288,sK289,sK290,sK291,sK292,sK293,sK294,sK295,sK296,sK297,vAPP,sK305,sK306,vAPP,sK308,sK309,sK310,vAPP,sK315,vAPP,sK317,vAPP,sK328,sK329,vAPP,sK334,sK335,sK336,vAPP,sK342,sK343,vAPP,sK368,sK369,vAPP,sK374,sK375,sK376,vAPP,sK380,sK381,sK382,sK383,sK384,sK385,sK386,sK387,sK388,sK389,vAPP,sK394,sK395,sK396,sK397,vAPP,sK404,sK405,sK406,sK407,sK408,sK409,sK410,vAPP,sK414,sK415,sK416,sK417,vAPP,sK428,sK429,vAPP,sK440,sK441,sK442,sK443,sK444,vAPP,sK451,sK452,vAPP,sK461,sK462,sK463,vAPP,sK468,sK469,sK470,sK471,sK472,sK473,sK474,sK475,sK476,sK477,vAPP,sK486,sK487,sK488,vAPP,sK493,sK494,vAPP,sK496,vAPP,sK498,vAPP,sK500,vAPP,sK504,sK505,sK506,vAPP,sK508,sK509,sK510,sK511,vAPP,sK526,sK527,sK528,sK529,sK530,vAPP,sK532,vAPP,sK534,vAPP,sK539,sK540,vAPP]),skolemize(X0,$thf(sK124)),skolemize(X1,$thf(sK125)),skolemize(X2,$thf(sK126)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X37,$thf(sK142)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X44,$thf(sK146)),skolemize(X45,$thf(sK147)),skolemize(X46,$thf(sK148)),skolemize(X50,$thf(sK149)),skolemize(X51,$thf(sK150)),skolemize(X52,$thf(sK151)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X95,$thf(sK170)),skolemize(X96,$thf(sK171)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X106,$thf(sK176)),skolemize(X107,$thf(sK177)),skolemize(X108,$thf(sK178)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X131,$thf(sK187)),skolemize(X132,$thf(sK188)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X136,$thf(sK191)),skolemize(X137,$thf(sK192)),skolemize(X138,$thf(sK193)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X147,$thf(sK196)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X154,$thf(sK198)),skolemize(X155,$thf(sK199)),skolemize(X156,$thf(sK200)),skolemize(X157,$thf(sK201)),skolemize(X158,$thf(sK202)),skolemize(X159,$thf(sK203)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X165,$thf(sK205)),skolemize(X166,$thf(sK206)),skolemize(X167,$thf(sK207)),skolemize(X168,$thf(sK208)),skolemize(X169,$thf(sK209)),skolemize(X170,$thf(sK210)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X187,$thf(sK217)),skolemize(X188,$thf(sK218)),skolemize(X189,$thf(sK219)),skolemize(X190,$thf(sK220)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X200,$thf(sK222)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X209,$thf(sK225)),skolemize(X210,$thf(sK226)),skolemize(X211,$thf(sK227)),skolemize(X212,$thf(sK228)),skolemize(X213,$thf(sK229)),skolemize(X214,$thf(sK230)),skolemize(X215,$thf(sK231)),skolemize(X216,$thf(sK232)),skolemize(X217,$thf(sK233)),skolemize(X225,$thf(sK234)),skolemize(X226,$thf(sK235)),skolemize(X227,$thf(sK236)),skolemize(X228,$thf(sK237)),skolemize(X229,$thf(sK238)),skolemize(X230,$thf(sK239)),skolemize(X235,$thf(sK240)),skolemize(X236,$thf(sK241)),skolemize(X243,$thf(sK242)),skolemize(X244,$thf(sK243)),skolemize(X245,$thf(sK244)),skolemize(X246,$thf(sK245)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X262,$thf(sK257)),skolemize(X263,$thf(sK258)),skolemize(X264,$thf(sK259)),skolemize(X265,$thf(sK260)),skolemize(X279,$thf(sK261)),skolemize(X280,$thf(sK262)),skolemize(X281,$thf(sK263)),skolemize(X282,$thf(sK264)),skolemize(X285,$thf(sK265)),skolemize(X286,$thf(sK266)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X306,$thf(sK274)),skolemize(X307,$thf(sK275)),skolemize(X308,$thf(sK276)),skolemize(X309,$thf(sK277)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X321,$thf(sK280)),skolemize(X322,$thf(sK281)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X329,$thf(sK286)),skolemize(X330,$thf(sK287)),skolemize(X331,$thf(sK288)),skolemize(X332,$thf(sK289)),skolemize(X333,$thf(sK290)),skolemize(X343,$thf(sK291)),skolemize(X344,$thf(sK292)),skolemize(X345,$thf(sK293)),skolemize(X346,$thf(sK294)),skolemize(X347,$thf(sK295)),skolemize(X348,$thf(sK296)),skolemize(X349,$thf(sK297)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X367,$thf(sK305)),skolemize(X368,$thf(sK306)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X374,$thf(sK308)),skolemize(X375,$thf(sK309)),skolemize(X376,$thf(sK310)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X384,$thf(sK315)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X387,$thf(sK317)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X417,$thf(sK328)),skolemize(X418,$thf(sK329)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X425,$thf(sK334)),skolemize(X426,$thf(sK335)),skolemize(X427,$thf(sK336)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X441,$thf(sK342)),skolemize(X442,$thf(sK343)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X489,$thf(sK368)),skolemize(X490,$thf(sK369)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X506,$thf(sK374)),skolemize(X508,$thf(sK375)),skolemize(X509,$thf(sK376)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X517,$thf(sK380)),skolemize(X524,$thf(sK381)),skolemize(X525,$thf(sK382)),skolemize(X526,$thf(sK383)),skolemize(X527,$thf(sK384)),skolemize(X528,$thf(sK385)),skolemize(X533,$thf(sK386)),skolemize(X534,$thf(sK387)),skolemize(X535,$thf(sK388)),skolemize(X536,$thf(sK389)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X543,$thf(sK394)),skolemize(X544,$thf(sK395)),skolemize(X549,$thf(sK396)),skolemize(X550,$thf(sK397)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X563,$thf(sK404)),skolemize(X564,$thf(sK405)),skolemize(X565,$thf(sK406)),skolemize(X566,$thf(sK407)),skolemize(X573,$thf(sK408)),skolemize(X576,$thf(sK409)),skolemize(X577,$thf(sK410)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X585,$thf(sK414)),skolemize(X587,$thf(sK415)),skolemize(X588,$thf(sK416)),skolemize(X589,$thf(sK417)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X613,$thf(sK428)),skolemize(X614,$thf(sK429)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X639,$thf(sK440)),skolemize(X640,$thf(sK441)),skolemize(X641,$thf(sK442)),skolemize(X642,$thf(sK443)),skolemize(X643,$thf(sK444)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X660,$thf(sK451)),skolemize(X661,$thf(sK452)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X685,$thf(sK461)),skolemize(X686,$thf(sK462)),skolemize(X687,$thf(sK463)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X696,$thf(sK468)),skolemize(X697,$thf(sK469)),skolemize(X702,$thf(sK470)),skolemize(X703,$thf(sK471)),skolemize(X704,$thf(sK472)),skolemize(X705,$thf(sK473)),skolemize(X706,$thf(sK474)),skolemize(X707,$thf(sK475)),skolemize(X708,$thf(sK476)),skolemize(X709,$thf(sK477)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X735,$thf(sK486)),skolemize(X736,$thf(sK487)),skolemize(X737,$thf(sK488)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X745,$thf(sK493)),skolemize(X746,$thf(sK494)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X752,$thf(sK496)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X755,$thf(sK498)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X760,$thf(sK500)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X769,$thf(sK504)),skolemize(X770,$thf(sK505)),skolemize(X771,$thf(sK506)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X778,$thf(sK508)),skolemize(X779,$thf(sK509)),skolemize(X780,$thf(sK510)),skolemize(X781,$thf(sK511)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X802,$thf(sK526)),skolemize(X803,$thf(sK527)),skolemize(X804,$thf(sK528)),skolemize(X815,$thf(sK529)),skolemize(X816,$thf(sK530)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X823,$thf(sK532)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X826,$thf(sK534)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X835,$thf(sK539)),skolemize(X836,$thf(sK540)),skolemize(X31,$thf(sK25 @ X26))],[f59])).
thf(f61,plain,(
  ((hoasinduction_lem1 != $true) | ? [X0 : (subst > term > subst > $o)] : (! [X9 : term] : (($true != ((hoasvar @ id @ X9 @ id))) | (((X0 @ id @ X9 @ id)) = $true)) & ! [X7 : subst,X8 : subst,X6 : subst,X5 : term] : ((((X0 @ X8 @ X5 @ (comp @ X7 @ X6))) = $true) | ($true != ((X0 @ (comp @ X8 @ X7) @ (sub @ X5 @ X7) @ X6)))) & ! [X2 : subst,X4 : subst,X1 : subst,X3 : term] : (($true != ((X0 @ X2 @ X3 @ (comp @ X4 @ X1)))) | (((X0 @ (comp @ X2 @ X4) @ (sub @ X3 @ X4) @ X1)) = $true)) & ? [X10 : term] : ((((var @ X10)) = $true) & ($true != ((X0 @ id @ X10 @ id)))))) & ((hoasinduction_lem1 = $true) | ! [X0 : (subst > term > subst > $o)] : (? [X9 : term] : (($true = ((hoasvar @ id @ X9 @ id))) & (((X0 @ id @ X9 @ id)) != $true)) | ? [X7 : subst,X8 : subst,X6 : subst,X5 : term] : ((((X0 @ X8 @ X5 @ (comp @ X7 @ X6))) != $true) & ($true = ((X0 @ (comp @ X8 @ X7) @ (sub @ X5 @ X7) @ X6)))) | ? [X2 : subst,X4 : subst,X1 : subst,X3 : term] : (($true = ((X0 @ X2 @ X3 @ (comp @ X4 @ X1)))) & (((X0 @ (comp @ X2 @ X4) @ (sub @ X3 @ X4) @ X1)) != $true)) | ! [X10 : term] : ((((var @ X10)) != $true) | ($true = ((X0 @ id @ X10 @ id))))))),
  inference(nnf_transformation,[],[f13])).
thf(f62,plain,(
  ((hoasinduction_lem1 != $true) | ? [X0 : (subst > term > subst > $o)] : (! [X1 : term] : ((((hoasvar @ id @ X1 @ id)) != $true) | (((X0 @ id @ X1 @ id)) = $true)) & ! [X2 : subst,X3 : subst,X4 : subst,X5 : term] : (($true = ((X0 @ X3 @ X5 @ (comp @ X2 @ X4)))) | (((X0 @ (comp @ X3 @ X2) @ (sub @ X5 @ X2) @ X4)) != $true)) & ! [X6 : subst,X7 : subst,X8 : subst,X9 : term] : ((((X0 @ X6 @ X9 @ (comp @ X7 @ X8))) != $true) | ($true = ((X0 @ (comp @ X6 @ X7) @ (sub @ X9 @ X7) @ X8)))) & ? [X10 : term] : ((((var @ X10)) = $true) & ($true != ((X0 @ id @ X10 @ id)))))) & ((hoasinduction_lem1 = $true) | ! [X11 : (subst > term > subst > $o)] : (? [X12 : term] : ((((hoasvar @ id @ X12 @ id)) = $true) & ($true != ((X11 @ id @ X12 @ id)))) | ? [X13 : subst,X14 : subst,X15 : subst,X16 : term] : (($true != ((X11 @ X14 @ X16 @ (comp @ X13 @ X15)))) & ($true = ((X11 @ (comp @ X14 @ X13) @ (sub @ X16 @ X13) @ X15)))) | ? [X17 : subst,X18 : subst,X19 : subst,X20 : term] : (($true = ((X11 @ X17 @ X20 @ (comp @ X18 @ X19)))) & ($true != ((X11 @ (comp @ X17 @ X18) @ (sub @ X20 @ X18) @ X19)))) | ! [X21 : term] : (($true != ((var @ X21))) | (((X11 @ id @ X21 @ id)) = $true))))),
  inference(rectify,[],[f61])).
thf(f63,plain,(
  ((hoasinduction_lem1 != $true) | (! [X1 : term] : ((((hoasvar @ id @ X1 @ id)) != $true) | (((sK542 @ id @ X1 @ id)) = $true)) & ! [X2 : subst,X3 : subst,X4 : subst,X5 : term] : (($true = ((sK542 @ X3 @ X5 @ (comp @ X2 @ X4)))) | ($true != ((sK542 @ (comp @ X3 @ X2) @ (sub @ X5 @ X2) @ X4)))) & ! [X6 : subst,X7 : subst,X8 : subst,X9 : term] : (($true != ((sK542 @ X6 @ X9 @ (comp @ X7 @ X8)))) | (((sK542 @ (comp @ X6 @ X7) @ (sub @ X9 @ X7) @ X8)) = $true)) & ((((var @ sK543)) = $true) & ($true != ((sK542 @ id @ sK543 @ id)))))) & ((hoasinduction_lem1 = $true) | ! [X11 : (subst > term > subst > $o)] : ((($true = ((hoasvar @ id @ (sK544 @ X11) @ id))) & ($true != ((X11 @ id @ (sK544 @ X11) @ id)))) | ((((X11 @ (sK546 @ X11) @ (sK548 @ X11) @ (comp @ (sK545 @ X11) @ (sK547 @ X11)))) != $true) & (((X11 @ (comp @ (sK546 @ X11) @ (sK545 @ X11)) @ (sub @ (sK548 @ X11) @ (sK545 @ X11)) @ (sK547 @ X11))) = $true)) | (($true = ((X11 @ (sK549 @ X11) @ (sK552 @ X11) @ (comp @ (sK550 @ X11) @ (sK551 @ X11))))) & ($true != ((X11 @ (comp @ (sK549 @ X11) @ (sK550 @ X11)) @ (sub @ (sK552 @ X11) @ (sK550 @ X11)) @ (sK551 @ X11))))) | ! [X21 : term] : (($true != ((var @ X21))) | (((X11 @ id @ X21 @ id)) = $true))))),
  inference(skolemize,[status(esa),new_symbols(skolem,[sK542,sK543,vAPP]),skolemize(X0,$thf(sK542)),skolemize(X10,$thf(sK543)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26)),skolemize(X31,$thf(sK25 @ X26))],[f62])).
thf(f542,plain,(
  ( ! [X659 : d_term] : ((d_one = X659)) )),
  inference(cnf_transformation,[],[f60])).
thf(f800,plain,(
  (((d2term @ d_one)) = one)),
  inference(cnf_transformation,[],[f60])).
thf(f803,plain,(
  (hoasinduction_lem1 = $true)),
  inference(cnf_transformation,[],[f60])).
thf(f829,plain,(
  (((var @ (d2term @ d_one))) != $true)),
  inference(cnf_transformation,[],[f60])).
thf(f896,plain,(
  ( ! [X203 : term] : ((((d2term @ (sK224 @ X203))) = X203)) )),
  inference(cnf_transformation,[],[f60])).
thf(f1031,plain,(
  (hoasinduction_lem1 != $true) | (((var @ sK543)) = $true)),
  inference(cnf_transformation,[],[f63])).
thf(f2099,definition,(
  spl553_176 <=> (hoasinduction_lem1 = $true)),
  introduced(definition,[new_symbols(definition,[spl553_176])],[avatar_definition])).
thf(f3593,plain,(
  spl553_176),
  inference(avatar_split_clause,[],[f803,f2099])).
thf(f3665,definition,(
  spl553_538 <=> (((d2term @ d_one)) = one)),
  introduced(definition,[new_symbols(definition,[spl553_538])],[avatar_definition])).
thf(f3667,plain,(
  (((d2term @ d_one)) = one) | ~spl553_538),
  inference(avatar_component_clause,[],[f3665])).
thf(f3668,plain,(
  spl553_538),
  inference(avatar_split_clause,[],[f800,f3665])).
thf(f4440,definition,(
  spl553_707 <=> (((var @ (d2term @ d_one))) = $true)),
  introduced(definition,[new_symbols(definition,[spl553_707])],[avatar_definition])).
thf(f4442,plain,(
  (((var @ (d2term @ d_one))) != $true) | spl553_707),
  inference(avatar_component_clause,[],[f4440])).
thf(f4443,plain,(
  ~spl553_707),
  inference(avatar_split_clause,[],[f829,f4440])).
thf(f4586,definition,(
  spl553_739 <=> (((var @ sK543)) = $true)),
  introduced(definition,[new_symbols(definition,[spl553_739])],[avatar_definition])).
thf(f4588,plain,(
  (((var @ sK543)) = $true) | ~spl553_739),
  inference(avatar_component_clause,[],[f4586])).
thf(f4589,plain,(
  spl553_739 | ~spl553_176),
  inference(avatar_split_clause,[],[f1031,f2099,f4586])).
thf(f5414,plain,(
  ( ! [X0 : d_term] : ((one = ((d2term @ X0)))) ) | ~spl553_538),
  inference(superposition,[],[f3667,f542])).
thf(f5623,definition,(
  spl553_936 <=> ($true = ((var @ one)))),
  introduced(definition,[new_symbols(definition,[spl553_936])],[avatar_definition])).
thf(f5806,plain,(
  ($true != ((var @ one))) | (~spl553_538 | spl553_707)),
  inference(forward_demodulation,[],[f4442,f3667])).
thf(f5807,plain,(
  ~spl553_936 | ~spl553_538 | spl553_707),
  inference(avatar_split_clause,[],[f5806,f4440,f3665,f5623])).
thf(f6179,plain,(
  ( ! [X203 : term] : ((one = X203)) ) | ~spl553_538),
  inference(backward_demodulation,[],[f896,f5414])).
thf(f6225,plain,(
  ($true = ((var @ one))) | (~spl553_538 | ~spl553_739)),
  inference(backward_demodulation,[],[f4588,f6179])).
thf(f6231,plain,(
  spl553_936 | ~spl553_538 | ~spl553_739),
  inference(avatar_split_clause,[],[f6225,f4586,f3665,f5623])).
cnf(s531, plain, spl553_176, inference(sat_conversion,[],[f3593])).
cnf(s550, plain, spl553_538, inference(sat_conversion,[],[f3668])).
cnf(s789, plain, ~spl553_707, inference(sat_conversion,[],[f4443])).
cnf(s829, plain, ~spl553_176 | spl553_739, inference(sat_conversion,[],[f4589])).
cnf(s1126, plain, ~spl553_538 | spl553_707 | ~spl553_936, inference(sat_conversion,[],[f5807])).
cnf(s1149, plain, ~spl553_538 | ~spl553_739 | spl553_936, inference(sat_conversion,[],[f6231])).
cnf(s1172, plain, ~spl553_936, inference(rat,[],[s1126,s789,s550])).
cnf(s1174, plain, ~spl553_739, inference(rat,[],[s1149,s550,s1172])).
cnf(s1175, plain, ~spl553_176, inference(rat,[],[s829,s1174])).
cnf(s1180, plain, $false, inference(rat,[],[s531,s1175])).
thf(f6301,plain,(
  $false),
  inference(avatar_sat_refutation,[],[s1180])).
% SZS output end Proof for theBenchmark
